Sql 仅当符合条件时才选择列值
我有一个包含s1和s2列的表 我的问题是:Sql 仅当符合条件时才选择列值,sql,sql-server,tsql,select,Sql,Sql Server,Tsql,Select,我有一个包含s1和s2列的表 我的问题是: SELECT s1, s2 FROM myTable WHERE s1 = 1 OR s2 = 1 使用示例数据: s1 s2 ------ 1 2 2 1 1 1 我想得到: s1 s2 -------- 1 NULL NULL 1 1 1 您知道一个简单的解决方案吗?您可以在以下情况下使用案例: SELECT CASE WHEN s1 = 1 THEN 1 ELSE NULL END AS s1, CA
SELECT s1, s2
FROM myTable
WHERE s1 = 1 OR s2 = 1
使用示例数据:
s1 s2
------
1 2
2 1
1 1
我想得到:
s1 s2
--------
1 NULL
NULL 1
1 1
您知道一个简单的解决方案吗?您可以在以下情况下使用
案例:
SELECT CASE WHEN s1 = 1 THEN 1 ELSE NULL END AS s1,
CASE WHEN s2 = 1 THEN 1 ELSE NULL END AS s2
FROM myTable
WHERE s1 = 1 OR s2 = 1