SQL视图不接受子句。

11 浏览
0 Comments

SQL视图不接受子句。

这个问题已经有了答案

如何在SQL SELECT语句中执行IF...THEN?

我需要从一个表格的字符串字段中获取一个布尔值字段的值。如果该字符串已经填写,那么该布尔值字段应该为 True

SELECT (MasterId IS NOT NULL) AS HasMaster FROM entries

然而,这会导致错误:

关键字“IS”附近的语法不正确

这是为什么,如何解决?

admin 更改状态以发布 2023年5月22日
0
0 Comments

试试这个:

SELECT (CASE WHEN MasterId IS NOT NULL THEN 1 ELSE 0 END) AS HasMaster 
FROM  entries

SQL Server 中没有布尔值,因此您可以在这里使用 CASE 表达式中的 '0''1'

0
0 Comments

尝试以下代码:

SELECT CAST(CASE WHEN MasterId IS NULL THEN 0 ELSE 1 END AS BIT) [HasMaster]
FROM entries

0