sql 问题 高手帮忙
来源:百度知道 编辑:UC知道 时间:2024/05/04 11:34:16
select count(1) from member where [name] is null
union all
select count(1) from member where department is not null
oracle 10g:
SELECT a.total_num,
-- 每个部门的总体条数
NVL(b.null_num, 0),
-- 出每个部门name=null的条数
a.total_num - NVL(b.null_num, 0)
-- 每个部门name!=null的条数
(SELECT COUNT(*) as total_num,
department
FROM member
GROUP BY department
) a
LEFT JOIN
(SELECT COUNT(*) as null_num,
department
FROM member
WHERE name IS NULL
GROUP BY department
) b
ON a.department = b.department
select count(name), count(count(*)-count(name))
from member
where name is null
幻冰的答案也不能成立。幻冰写的条件是name is null,那么
count(count(*)-count(name))不会是name is not null的总条数的。
一个SQL语句好像不行
判断条件都没有办法放在一个语句里面
select department,count(slelect