为什么这会在等号上引发错误?
select IIF((SUBSTRING('A1234', 1, 1) = 'A'), TRUE, FALSE) as IsAustraliaUser
错误:
消息 102,级别 15,状态 1,第 1 行
'=' 附近的语法不正确。
为什么这会在等号上引发错误?
select IIF((SUBSTRING('A1234', 1, 1) = 'A'), TRUE, FALSE) as IsAustraliaUser
错误:
消息 102,级别 15,状态 1,第 1 行
'=' 附近的语法不正确。
您应该用 CASE 替换 IIF,SQL Server 中也不存在 TRUE 和 FALSE,您可以使用 VARCHAR 或 BIT
select CASE WHEN SUBSTRING('A1234', 1, 1) = 'A' THEN 'TRUE' ELSE 'FALSE' END as IsAustraliaUser
我认为 SQL 不支持这种 IIF 语法(除非您使用的是 2012),请替换为大小写。
SELECT CASE WHEN ( SUBSTRING('A1234', 1, 1) = 'A' ) THEN 'TRUE'
ELSE 'FALSE'
END AS IsAustraliaUser