mssql里面GROUP BY 分组排序对空值的处理方法
朋友你还在咨询group by 过滤掉空值怎么办,GROUP BY 分组空值如何处理吗,其实很简单的啦,
如果分组列包含一个空值,那么该行将成为结果中的一个组。如果分组列包含多个空值,那么这些空值将放入一个组中。此行为在 SQL-2003 标准中定义。
Product 表的 Color 列中包含一些空值,例如:
SELECT Color, AVG (ListPrice) AS 'average list price'
FROM zhaoxi.net
GROUP BY Color
ORDER BY Color
下面是结果集:
Color average list price
NULL 16.8641
Black 998.9097
Blue 1128.0385
Grey 125.00
Multi 59.865
Red 1303.2674
Silver 1124.8334
Silver/Black 64.0185
White 9.245
Yellow 1197.6138(10 row(s) affected)
QL关于GROUP BY字段为空的处理方法就是 SELECT 语句通过添加一个 WHERE 子句,可以更改为删除空值:
SELECT Color, AVG (ListPrice) AS 'average list price'
FROM zhaoxi.net
WHERE Color IS NOT NULL
GROUP BY Color
ORDER BY Color