微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql – 从没有行的计数获取0值

我有SELECT:
SELECT c FROM (
    SELECT "candidate_id" as id,count("candidate_id") as c
    FROM "Applicaions"
    GROUP BY "candidate_id"
) as s WHERE id= _SOME_ID_;

但是,如果count>如果count = 0,则不返回任何内容.如何获得0的“候选人”没有任何应用程序?

有表“候选人”.
如果候选人没有应用程序或不存在,我需要得到0.

编辑

我现在有

SELECT COALESCE ((SELECT count("candidate_id") as c
FROM "Applicaions" WHERE "candidate_id"=_SOME_ID_
GROUP BY "candidate_id"),0);

它工作完美.但是可以写得更简单还是最好的解决方案?我应该创建任何索引吗?

解决方法

您需要在Postgresql http://developer.postgresql.org/pgdocs/postgres/functions-conditional.html中使用COALESCE功能

基本上你需要告诉sql如何处理NULL.即当NULL返回0时.

原文地址:https://www.jb51.cc/mssql/81366.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐