Использование SELECT в этом операторе SQL не работает

0

Мой стол организован так:

Изображение 174551

С key в качестве основного поля. Показанные записи находятся в renamed таблице.

Мне нужно вытащить original_name по ключу. Ключ coluimn является первичным ключом таблицы.

Это мой код SQL:

SELECT original_name FROM 'renamed' WHERE key='fb166'

Тем не менее, он не возвращает никаких результатов. Я пробовал как через мой PHP-скрипт, так и напрямую через phpMyAdmin, и оба возвращают пустой набор результатов.

Любая помощь? :/

  • 3
    Может ли значение содержать пробелы? Например, 'fb166 ' ?
  • 2
    Если у вас есть WHERE key LIKE '%fb166%' , вы получаете какие-либо результаты?
Показать ещё 6 комментариев
Теги:
phpmyadmin

3 ответа

5
Лучший ответ

key является зарезервированным словом в MySQL. Вы пробовали:

SELECT original_name FROM `renamed` WHERE `key`='fb166'
  • 0
    Ах! Это работает. Я забыл все о возможности зарезервированных слов. Большое спасибо! :)
0

Попробуйте что-нибудь вроде

SELECT '|' || key || '|'
FROM renamed
WHERE key LIKE '%fb166%'

и проверьте, есть ли у вас результат и как выглядит ключ...

Получаете ли вы какие-либо результаты со следующим?

SELECT * FROM renamed
  • 0
    Это возвращает все ряды.
0
  • Обратные ссылки необходимы, поскольку ключ является ключевым словом в mysql.

  • Как было предложено попробовать с WHERE key LIKE '%fb166%', поскольку столбец имеет текст типа, вероятно, у вас есть еще один char.

  • Неплохая идея иметь ключ с типом текста, вы не сможете сделать его первичным ключом или добавить к нему индекс.

  • 0
    Как получить обратные ссылки в коде?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню