我有一个SQL查询,其中包含以下SELECT术语:
SUM(CASE WHEN JobResponses.result = "true" THEN 1 ELSE 0 END) AS [True],
SUM(CASE WHEN JobResponses.result = "false" THEN 1 ELSE 0 END) AS [False],
但是,当我使用这是一个SQL Server查询时,我得到了语法错误:
无效的列名称'true'。
显然result
是对列名的引用,为什么我会收到此错误?它似乎在SQLite上工作正常吗?
答案 0 :(得分:2)
你正在使用“围绕真假,应该是'单引号。
SQL使用“作为列标识符。
答案 1 :(得分:1)
使用单引号可以解决问题:
SUM(CASE WHEN JobResponses.result = 'true' THEN 1 ELSE 0 END) AS 'True',
SUM(CASE WHEN JobResponses.result = 'false' THEN 1 ELSE 0 END) AS 'False',