Использование SELECT в этом операторе SQL не работает - PullRequest
0 голосов
/ 18 декабря 2009

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

alt text

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

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

Это мой код SQL:

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

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

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

Ответы [ 3 ]

5 голосов
/ 18 декабря 2009

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

SELECT original_name FROM `renamed` WHERE `key`='fb166'
0 голосов
/ 18 декабря 2009
  1. Обратные знаки необходимы, поскольку ключ является ключевым словом в mysql.

  2. Как предложено, попробуйте с WHERE ключом LIKE '%fb166%', так как ваш столбец имеет тип text, вероятно, у вас есть какой-то другой символ в нем.

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

0 голосов
/ 18 декабря 2009

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

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

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

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

SELECT * FROM renamed
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...