【发布时间】:2020-08-28 15:44:59
【问题描述】:
SQL 查询:
SELECT DISTINCT [File Version Number], [Enrollment Employee ID]
FROM Participant
结果:
+---------------------+------------------------+
| Fule Version Number | Enrollment Employee ID |
+---------------------+------------------------+
| null | null |
| null | 1100527 |
| null | 5032506 |
| v2.2.0 | null |
+---------------------+------------------------+
期望的结果:排除具有 NULL 数据的行;第一行。
我知道我们可以在两列上使用 where 子句来过滤空行,但是如果我们有大量的列要选择,并且我们不想有很长的 where 子句怎么办?
任何解决方案或解决方法都将受到高度赞赏。谢谢。
【问题讨论】:
-
如果你可以
coalesce各个列,即有一些兼容的数据类型,结果is null那么它们都是null。 -
你能用
dynamic sql吗?检查这是否可以帮助你stackoverflow.com/questions/780337/… -
WHERE正是您想要的。 -
你使用什么 SGBDR?
-
如果只有第一行,“WHERE [Enrollment Employee ID] IS NOT NULL OR [File Version Number] IS NOT NULL”?
标签: sql sql-server where-clause sql-null