【发布时间】:2019-03-06 03:06:34
【问题描述】:
我有2张表银行和申请人,如何查询显示所有银行并计算使用该银行的申请人数
Bank:
| id | Bank_desc
|----|---------
| 1 | Ambank
| 2 | Maybank
| 3 | RHB BANK
| 4 | OSBC
[申请人][2]:
| id | Name | Bank|STEP|
|----|------|----|----|
| 1 | JACK | 3 | W1 |
| 2 | ANDY | 1 | W4 |
| 3 | VOID | 1 | W1 |
| 4 | RAY | 1 | W5 |
我想显示申请人总数的所有银行列表,但仅显示步骤 W1 或 W4 中的申请人, [结果][2]:
| id | Bank |Total|
|----|----------|----|
| 1 | Ambank | 2 |
| 2 | Maybank | 0 |
| 3 | RHB BANK | 1 |
| 4 | OSBC | 0 |
我试过这个 sql
SELECT
b.id,
b.Bank, COUNT(a.Bank) AS Total FROM Bank b LEFT JOIN Applicant a ON b.id = a.Bank WHERE a.step ='W1' or a.step='W4 GROUP BY b.id, b.Bank;
但结果只显示有价值的银行,而不是所有银行
[结果][2]:
| id | Bank |Total|
|----|----------|----|
| 1 | Ambank | 2 |
| 2 | RHB BANK | 1 |
如果我删除 WHERE a.step ='W1' 或 a.step='W4
它会显示所有银行列表,但也会显示所有步骤
任何帮助将不胜感激,在此先感谢!
【问题讨论】:
标签: mysql select count where-clause mysql-error-1064