表:xiaoshou
字段:id ,username
数据:1 张三
2 李四
表:dingdan
字段:id ,ordertotal
1 100
1 50
sql:select username,sum(ordertotal) as ordertotal from xiaoshou left outer join dingdan on xiaoshou.id=dingdan.id where ordertotal>0 group by username
查询结果:username ordertotal
张三 150
希望得到的结果:username ordertotal
张三 150
李四 0
即使“李四”没有数据也要显示李四的名字,且ordertotal为0。
多谢!!
------解决方案--------------------
select username,isnull(sum(ordertotal),0) as ordertotal from xiaoshou left outer join dingdan on xiaoshou.id=dingdan.id group by username
------解决方案--------------------
mysql> select * from xiaoshou;
+------+----------+
------解决方案--------------------
id
------解决方案--------------------
username
------解决方案--------------------
+------+----------+
------解决方案--------------------
1
------解决方案--------------------
zhangsan
------解决方案--------------------
------解决方案--------------------
2
------解决方案--------------------
lisi
------解决方案--------------------
+------+----------+
2 rows in set (0.00 sec)
mysql> select * from dingdan;
+------+------------+
------解决方案--------------------
id
------解决方案--------------------
ordertotal
------解决方案--------------------
+------+------------+
------解决方案--------------------
1
------解决方案--------------------
100
------解决方案--------------------
------解决方案--------------------
1
------解决方案--------------------