我有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 举报,一经查实,本站将立刻删除。