举报
阿芭_
那你这种情况,适用左连接 A left join(左连接)包含所有的左边表中的记录甚至是右边表中没有和它匹配的记录。 两个表a,b相连接,要取出id相同的字段 select * from a inner join b on a.aid = b.bid这是仅取出匹配的数据. 此时的取出的是: 1 a1 b1 2 a2 b2 那么left join 指: select * from a left join b on a.aid = b.bid 首先取出a表中所有数据,然后再加上与a,b匹配的的数据 此时的取出的是: 1 a1 b1 2 a2 b2 3 a3 空字符 对你这种情况,写成 select COUNT(USER) as total,USER from USERtable left join book where USER=48 group by USER 关键是加入有所有用户记录的USERtable表