【发布时间】:2017-10-31 15:09:33
【问题描述】:
我有这段代码:
SELECT
'Type1' AS TYPE
,1500 AS TotalBalance
,0 AS OverdueBal
INTO #temp1
SELECT
CASE
WHEN
(TYPE = 'Type1' AND TotalBalance BETWEEN 1301 AND 5000) OR
(TYPE = 'Type2' AND TotalBalance >= 1301) AND
OverdueBal > 100 THEN 'Category1'
END
,*
FROM
#temp1
我不明白为什么这个CASE 语句的结果是TRUE?
该行满足大括号中的第一个条件,但不满足AND 条件。
如果我删除第二个大括号条件,那么它会正常工作,结果是 NULL。
在我看来,它忽略了大括号。
【问题讨论】:
标签: sql-server tsql conditional case