如何将key_id
结果导入subquery
语句。
CASE
欲望输出
对于ID为5和4的7 - 2行
Else Matching 1 Row with 0
错误
子查询返回的值超过1。这是不允许的 子查询跟随=,!=,<,< =,>,> =或当子查询用作 表达。
答案 0 :(得分:1)
你可以尝试:
Select *
from TestDb T
where T.DATA=7 AND T.LEVELID IN (Select Data from dbo.Split('5,4',','))
OR ((T.DATA IS NULL OR T.DATA<>7) AND T.LEVELID=0)
示例数据:
CREATE TABLE TESTDB (LEVELID INT, DATA INT);
INSERT INTO TESTDB values (4,7);
INSERT INTO TESTDB values (0,6);
INSERT INTO TESTDB values (0,NULL);
INSERT INTO TESTDB values (5,7);
INSERT INTO TESTDB values (6,7);
输出:
LEVELID DATA
4 7
0 6
0 NULL
5 7