关于Mysql数据表行转列

有如数据表:

clipboard.png

一条sql语句,实现如下查询结果

clipboard.png
我的sql语句实现的结果不对,请问是怎么回事??谢谢
sql语句:

select team_name,count(if(score='正','正','')) as'正',count(if(score='负','负','')) as '负' from teamscore group by team_name;
得到的结果是这样的

clipboard.png

阅读 3.5k
3 个回答

试试下面的语句:

select team_name,sum(if(score='正',1,0)) as'正',sum(if(score='负',1,0)) as '负' 
from teamscore 
group by team_name;

应该是:

SELECT team_name, count(*) AS win WHERE score = '正' GROUP BY team_name
SELECT team_name, count(*) AS loss WHERE score = '负' GROUP BY team_name

再想办法把这两个结果合起来。

谢谢,结果得到了,

clipboard.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题