博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sql 行转列/列转行 示例
阅读量:3898 次
发布时间:2019-05-23

本文共 608 字,大约阅读时间需要 2 分钟。

行列转换就是如下图所示两种展示形式的互相转换

在这里插入图片描述

行转列

假如我们有下表:

在这里插入图片描述

SELECT name,  MAX(  CASE    WHEN subject='语文'    THEN score    ELSE 0  END) AS "语文",  MAX(  CASE    WHEN subject='数学'    THEN score    ELSE 0  END) AS "数学",  MAX(  CASE    WHEN subject='英语'    THEN score    ELSE 0  END) AS "英语"FROM studentGROUP BY name

通过上面 SQL 语句即可得到下面的结果

在这里插入图片描述

列转行

假设我们有下表

在这里插入图片描述

SELECT    NAME,    '语文' AS subject ,    MAX("语文") AS scoreFROM student1 GROUP BY NAMEUNIONSELECT    NAME,    '数学' AS subject ,    MAX("数学") AS scoreFROM student1 GROUP BY NAMEUNIONSELECT    NAME,    '英语' AS subject ,    MAX("英语") AS scoreFROM student1 GROUP BY NAME

通过上面 SQL 语句即可得到下面的结果

在这里插入图片描述

转载地址:http://pnyen.baihongyu.com/

你可能感兴趣的文章
ZJNUCTF
查看>>
[极客大挑战 2019]BabySQL
查看>>
[ZJCTF 2019]NiZhuanSiWei
查看>>
[BUUCTF 2018]Online Tool
查看>>
[GXYCTF2019]BabySQli
查看>>
BUUCTF_upload-labs 第一题
查看>>
2020暑期集训WEB部分WriteUp
查看>>
[极客大挑战 2019]HardSQL
查看>>
[网鼎杯 2020 青龙组]AreUSerialz
查看>>
Ubuntu上使用docker部署flask项目记录
查看>>
[GXYCTF2019]禁止套娃
查看>>
[安洵杯 2019]easy_web
查看>>
[BJDCTF 2nd]假猪套天下第一
查看>>
使用Ubuntu搭建Web服务器
查看>>
MySQL数据库基本操作
查看>>
Docker简单使用教程
查看>>
Doc
查看>>
[网鼎杯 2020 朱雀组]Nmap
查看>>
[极客大挑战 2019]FinalSQL
查看>>
[NCTF2019]True XML cookbook
查看>>