如果WHERE子句中的邻域不存在,如何让我的mysql数据库返回0?因此,在下面的示例中,Old Town不在数据库中.我希望数据库返回0个事件而不是空结果.
SELECT incidents,
neighborhoods
FROM `myTable`
WHERE neighborhoods ='Old Town'
Run Code Online (Sandbox Code Playgroud)
我也试过了
SELECT IFNULL(incidents,0),
IFNULL(neighborhoods,0)
FROM `myTable`
WHERE neighborhoods ='Old Town'
Run Code Online (Sandbox Code Playgroud)
任何建议都会非常感激.
我对你的问题的看法是构建一个neighborhoods你希望找到的值的派生表,以及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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
355 次 |
| 最近记录: |