【发布时间】:2012-05-09 19:18:11
【问题描述】:
如何在 SQL Select 语句中返回布尔值?
我试过这段代码:
SELECT CAST(1 AS BIT) AS Expr1
FROM [User]
WHERE (UserID = 20070022)
如果UserID 存在于表中,它只会返回TRUE。如果桌子上不存在UserID,我希望它返回FALSE。
【问题讨论】:
-
哪个 dbms? sql的细节不同。
-
SQL Server 不支持布尔类型,例如
SELECT WHEN CAST(1 AS BIT) THEN 'YES' END AS result-- 导致错误,即CAST(1 AS BIT)不是同一个逻辑 TRUE。