簡體   English   中英

SQL中的case語句中的列名無效

[英]Invalid column name in case statements in SQL

我有一個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上運行良好?

你正在使用“圍繞真假,應該是'單引號。

SQL使用“作為列標識符。

使用單引號可以解決問題:

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',

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM