左加入计数

时间:2013-11-14 04:50:46

标签: mysql sql select count group-by

对不起......

我是Newbie,左边连接有问题

结构表A:

结构表B:

----------------------
|Branch_code   | NIK
----------------------
'IDJB001BEC', '1300001'
'IDJB001BEC', '1300002'
'IDPA001PPA', '1300003'
'IDJK001MAG', '1300004'
'IDJB001BEC', '1300005'
'IDJB001BEC', ''
'IDBTNCTR', ''

结构表C:

|branch_code|
'IDBE001BGK'
'IDBE002BGK'
'IDBTNCTR'
'IDJB001BEC'
'IDJK001HO'
'IDJK001MAG'
'IDJK001MPI'
'IDJK002MCL'
'IDJK002MPB'
'IDJK003KDY'

示例我希望从这样的结果中得到:

|Branch_code|count|
'IDJK001MAG'  0
'IDJK001MPI'  0
'IDJK002MCL'  3
'IDJK002MPB'  5
'IDJK003KDY'  4

注意:零仍然显示在字段“count”中,尽管该行为空/零。

谢谢大师

3 个答案:

答案 0 :(得分:0)

试试这个:

SELECT c.branch_code, COUNT(b.nik) 
FROM tablec c 
LEFT JOIN tableb b ON c.branch_code, b.branch_code 
GROUP BY c.branch_code

答案 1 :(得分:0)

select a.branch_code,count(a.nik) as nik_count from table a left join table b
on a.branch_code=b.branch_code

group by a.branch_code

答案 2 :(得分:0)

看不出你做错了什么,因为你没有发布你的查询,但这应该可以满足你的需求:

SELECT 
c.branch_code, 
COUNT(b.nik) 
FROM tablec c 
LEFT JOIN tableb b ON c.branch_code = b.branch_code 
GROUP BY c.branch_code

SQL Fiddle