加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

当Where子句中的术语不在数据库中时,如何从MySQL数据库返回0?

发布时间:2020-12-11 23:50:56 所属栏目:MySql教程 来源:网络整理
导读:如果WHERE子句中的邻域不存在,如何让我的mysql数据库返回0?因此,在下面的示例中,Old Town不在数据库中.我希望数据库返回0个事件而不是空结果. SELECT incidents,neighborhoods FROM `myTable` WHERE neighborhoods ='Old Town' 我也试过了 SELECT IFNULL(in

如果WHERE子句中的邻域不存在,如何让我的mysql数据库返回0?因此,在下面的示例中,Old Town不在数据库中.我希望数据库返回0个事件而不是空结果.

SELECT incidents,neighborhoods 
 FROM `myTable` 
WHERE neighborhoods ='Old Town'

我也试过了

SELECT IFNULL(incidents,0),IFNULL(neighborhoods,0) 
  FROM `myTable` 
 WHERE neighborhoods ='Old Town'

任何建议都会非常感激. 最佳答案 我对你的问题的看法是构建一个你希望找到的邻域值的派生表,并将LEFT JOIN加到实际的表中:

   SELECT x.neighborhoods,COALESCE(mt.incidents,0) AS incidents
     FROM (SELECT 'Old Town' AS neighborhoods
             FROM DUAL
           UNION ALL
           SELECT 'New Town'
             FROM DUAL) x
LEFT JOIN MYTABLE mt ON mt.neighborhoods = x.neighborhoods

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读