无法使用in语句让mysql识别查询



我一直在尝试根据复选框中的输入调整mysql SELECT语句。php代码将勾选的复选框收集到一个数组中,将它们分解成逗号分隔的列表,然后使用in语句运行查询(如本文所述)。

生成的查询显示为SELECT * FROM events WHERE Discipline IN (SJ,OTHER),据我所知,这是一个格式正确的查询。

从php代码运行时,这显示为一个无效查询。当我使用phpmyadmin运行查询时,我收到以下消息:

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

我想知道是否有人能告诉我为什么那个查询会产生错误?

尝试在in子句中的值周围加引号:

SELECT * FROM events WHERE Discipline IN ('SJ','OTHER')

如果SJ和OTHER是字符串文字使用:

 SELECT * FROM events WHERE Discipline IN ('SJ','OTHER')

最新更新