前端之家收集整理的这篇文章主要介绍了
sql – Oracle – 将多个计数作为一个查询返回,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有几个问题,详情如下.我希望能够运行一个返回两个计数的
SQL查询,这可能吗?
1.
select nvl(count(rowid),0) from tablename where OPP = 'FOO' and date = 'BAZ';
2.
select nvl(count(rowid),0) from tablename where OPP = 'BAR' and date = 'BAZ';
到目前为止,我只在搜索中找到了MSsql特定的解决方案.
如果您需要它们在一行中:
SELECT
COUNT(CASE OPP WHEN 'FOO' THEN 1 END),COUNT(CASE OPP WHEN 'BAR' THEN 1 END)
FROM tablename
WHERE OPP IN ('FOO','BAR') AND date = 'BAZ'
(无论如何,Thilo的GROUP BY方法是更好的通用解决方案.)
编辑:我删除了NVL().我忘记了为什么我从不使用它.
原文链接:https://www.f2er.com/mssql/78928.html