当前位置: 代码迷 >> C# >> 查询统计如何把null与''统计到一起
  详细解决方案

查询统计如何把null与''统计到一起

热度:73   发布时间:2016-05-05 03:27:27.0
查询统计怎么把null与''统计到一起啊
select count(distinct name) from table a
group by name 

结果会有等于null 和 等于 ‘’ 都有啊
我想把null转换为‘’一起算条数怎么写啊


------解决思路----------------------
里面先执行一次查询,将两种情况合并,外面再Group by
以oracle为例:

SELECT COUNT(NAME) FROM 
(
SELECT NVL(NAME, '')  AS NAME FROM TABLE
)
GROUP BY NAME
------解决思路----------------------
给null字段设置个默认值''就完了
------解决思路----------------------
isnull(name,'')

------解决思路----------------------
引用:
select count(distinct name) from table a
group by name 

结果会有等于null 和 等于 ‘’ 都有啊
我想把null转换为‘’一起算条数怎么写啊


select count(distinct isnull(name,''))  from table a
 group by isnull(name ,'')

------解决思路----------------------
你已经 count(distinct name)
null, '' 都只会计算一条,和你的期望是有差距的

select count(distinct ifnull(name,'')) from table a
看看就知道 '' 组最多是1
------解决思路----------------------
用isnull函数给null的字段指定默认值就行了。
  相关解决方案