小弟最近在弄一个投票的东西有个困惑
以下是三个表
A表 存会员资料,需要用到的只有ID这个字段
B表 存有哪些作品(被投票),vl_num 这个字段为他的编号
C表 存了vl_num 跟 会员资料表中的ID,来代表会员中的谁投给了谁
以及本身的AUTO码为vf_num
现在我想要的是能将B表的东西全部列出来
并计算他在C表中有几个人投给他
以下是我的SQL
SELECT `b`.vl_num as vl_num,count(`c`.vf_num) as vote_num
FROM `b`
left join `c` on `b`.vl_num = `c`.vl_num
group by `c`.vl_num
order by `b`.vl_num
但是这样显示出来只有显示4个
而我在B表中有十笔资料,用left join 不是应该b表的资料都会出现吗@@?
如果是说C表有B表才会有也很奇怪,因为我C表里面用到B表的只有三笔
如果我用普通的join就是出现三笔没错,但我用left join 反而出现四笔
但我B表内有十笔呀!
请问各位先进这是为什么呢?
烦请指点小弟了!
谢谢!