Rumah  >  Artikel  >  pangkalan data  >  mysql如何实现行转列

mysql如何实现行转列

coldplay.xixi
coldplay.xixiasal
2020-11-23 09:14:445222semak imbas

mysql实现行转列的方法:1、用cross join的方式实现,代码为【cross join(select sum(a.kills) '猪八戒】;2、用case语句的方式实现,代码为【case when user_name='孙悟空'】。

mysql如何实现行转列

本教程操作环境:windows7系统、mysql8.0.22版,该方法适用于所有品牌电脑。

mysql实现行转列的方法:

1、用cross join的方式实现

select * from 
(select sum(a.kills) '孙悟空' 
  from kills1 as a 
  LEFT JOIN tssrz as b 
    on a.user_id = b.id 
 WHERE b.user_name = '孙悟空' 
 GROUP BY b.user_name) e
 cross join 
 (select sum(a.kills) '猪八戒' 
  from kills1 as a 
  LEFT JOIN tssrz as b 
    on a.user_id = b.id 
 WHERE b.user_name = '猪八戒' 
 GROUP BY b.user_name) f

2、用case语句的方式实现

SELECT sum(case when user_name='孙悟空' then kills end) as '孙悟空',
  sum(case when user_name='猪八戒' then kills END) as '猪八戒',
  sum(case when user_name='沙和尚' then kills END) as '沙和尚'
   from tssrz as a
   join kills1 as b
     on a.id = b.user_id

相关免费学习推荐:mysql视频教程

Atas ialah kandungan terperinci mysql如何实现行转列. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn