我有一张表,我想在每列中获取行记录数。其中column1不为null column2不为null column3为notnull且uID ='2'
如果记录是
uid C1 C2 C3
2 Null 3 3
2 2 2 Null
此处的计数为C1=1, c2=2,c3=1
如何在一个查询中执行此操作
答案 0 :(得分:2)
COUNT(colname)
应忽略聚合中的NULL
值,因此查询实际上应该很简单。请注意,COUNT(*)
行为不同,并且不会忽略NULL
行。
SELECT COUNT(C1), COUNT(C2), COUNT(C3) FROM table WHERE uid=2
有关NULL
汇总行为is found here in the docs.
答案 1 :(得分:0)
SELECT COUNT(C1), COUNT(C2), COUNT(C3)
FROM YourTable
WHERE uID = 2
GROUP BY uID
答案 2 :(得分:0)
SELECT COUNT(C1), COUNT(C2), COUNT(C3)
FROM Mytable
WHERE uid=2
默认情况下,它不会计算NULL值。
答案 3 :(得分:0)
从表中选择计数(C1),计数(C2),计数(C3)