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

前端之家收集整理的这篇文章主要介绍了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时.

猜你在找的MsSQL相关文章