Невозможно получить mysql для распознавания запроса, используя в выражении - PullRequest
2 голосов
/ 12 января 2012

Я пытался настроить оператор SELECT mysql на основе входных данных из флажков. Код php собирает отмеченные флажки в массив, внедряет их в список через запятую и затем запускает запрос с помощью оператора in (как было подробно здесь ).

Сгенерированный запрос выглядит как SELECT * FROM events WHERE Discipline IN (SJ,OTHER), насколько я могу судить, это правильно отформатированный запрос.

Это отображается как недопустимый запрос при запуске из кода php. Когда я запускаю запрос с использованием phpmyadmin, я получаю это сообщение:

#1054 - Unknown column 'SJ' in 'where clause'

Мне было интересно, может кто-нибудь сказать, почему этот запрос генерирует ошибку?

Ответы [ 2 ]

2 голосов
/ 12 января 2012

Попробуйте заключить в кавычки значения в предложении IN:

SELECT * FROM events WHERE Discipline IN ('SJ','OTHER')
0 голосов
/ 12 января 2012

Если SJ и OTHER - строковые литералы:

 SELECT * FROM events WHERE Discipline IN ('SJ','OTHER')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...