本文实例讲述了MySQL横纵表相互转化操作实现方法。分享给大家供大家参考,具体如下:

先创建一个成绩表(纵表)

create table user_score

(

name varchar(20),

subjects varchar(20),

score int

);

insert into user_score(name,subjects,score) values('张三','语文',60);

insert into user_score(name,subjects,score) values('张三','数学',70);

insert into user_score(name,subjects,score) values('张三','英语',80);

insert into user_score(name,subjects,score) values('李四','语文',90);

insert into user_score(name,subjects,score) values('李四','数学',100);

再创建一个成绩表(横表)

create table user_score2

(

name varchar(20),

yuwen int,

shuxue int,

yingyu int

);

insert into user_score2(name,yuwen,shuxue,yingyu) values('张三',60,70,80);

insert into user_score2(name,yuwen,shuxue,yingyu) values('李四',90,100,0);

纵表转横表

select name,sum(case subjects when '语文' then score else 0 end)

as '语文',sum(case subjects when '数学' then score else 0 end)

as '数学', sum(case subjects when '英语' then score else 0 end)

as '英语'from user_score group by name;

纵表转横表

SELECT name,'yuwen' AS subjects,yuwen AS score FROM user_score2 UNION ALL

SELECT name,'shuxue' AS subjects,shuxue AS score FROM user_score2 UNION ALL

SELECT name,'yingyu' AS subjects,yingyu AS score FROM user_score2

ORDER BY name,subjects DESC;

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL查询技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总》

希望本文所述对大家MySQL数据库计有所帮助。

mysql 横纵表转化_数据库MySQL横纵表相互转化操作实现方法相关推荐

  1. mysql where 条件取反_数据库MySQL之where条件查询

    数据库MySQL之where条件查询 1. where条件查询的介绍 使用where条件查询可以对表中的数据进行筛选,条件成立的记录会出现在结果集中. where语句支持的运算符: 比较运算符 逻辑运 ...

  2. mysql基础小测试三_数据库---MySQL(三)

    一.视图 视图是一个虚拟表,是sql的查询结果,其内容由查询定义.同真实的表一样,视图包含一系列带有名称的列和行数据,在使用视图时动态生成.视图的数据变化会影响到基表,基表的数据变化也会影响到视图[i ...

  3. mysql面试题sql语句_数据库MySQL经典面试题之SQL语句

    数据库MySQL经典面试题之SQL语句 1.需要数据库表1.学生表 Student(SID,Sname,Sage,Ssex) --SID 学生编号,Sname 学生姓名,Sage 出生年月,Ssex ...

  4. mysql删除当前行 快捷_数据库-Mysql操作之Navicat快捷键操作

    一.Navicat使用技巧(附快捷键) 1.有时按快捷键Ctrl+F搜某条数据的时候搜不到,但是能用sql查出来,这是怎么回事? Ctrl+F只能搜本页数据,不在本页的数据搜不到,navicat每页默 ...

  5. mysql被禁用了怎么办_数据库mysql存储遇到禁用怎么办?

    原标题:数据库mysql存储遇到禁用怎么办? 我们有大量数据要存放的时候,通常会需要使用数据库.不过有些功能因为本身使用的限制,想要放在数据库的时候就会出现禁用.这里我们以mysql数据库和常用的se ...

  6. mysql 两表拼接_数据库将两张表进行横向连接(拼接成一张表的形式显示)

    将两张没有关联字段的表进行横向连接,在工作中,对于一些报表的显示,需要展示两张没有关联字段的表中的数据,并且横向连接,比如下面两张表的数据: SELECT * FROM STUDENT T; SELE ...

  7. mysql 多个实例 备份_数据库Mysql备份多个数据库代码实例

    这篇文章主要介绍了Mysql备份多个数据库代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 备份数据米云 #!/bin/bash # date ...

  8. 数据库mysql改密码忘了怎么办_数据库mysql改密码忘了怎么办

    mysql有时候忘记密码了怎么办?我给出案例和说明!一下就解决了! Windows下的实际操作如下 1.关闭正在运行的MySQL. 2.打开DOS窗口,转到mysql\bin目录. 3.输入mysql ...

  9. mysql清空数据库所有表的命令_mysql清空表数据命令是什么?_数据库,mysql,清空表数据...

    mysql服务无法启动怎么解决_数据库 mysql服务无法启动的解决方法是:1.配置环境变量:2.在mysql安装目录下,新建my.ini文件,设置默认字符集.端口.存储引擎等:3.执行[mysqld ...

最新文章

  1. Solr 访问 403 错误
  2. osg geometry清空vertex
  3. Prometheus+Grafana监控PostgreSQL
  4. java版如何使区块常加载,Java类加载机制 - suer27zhu的个人空间 - OSCHINA - 中文开源技术交流社区...
  5. Docker最全教程之使用Tencent Hub来完成CI(九)
  6. 第七篇:A133 Android 10 触摸提示音过大
  7. 未备案域名可以用吗?域名备案有什么好处?
  8. 腾讯云轻量型服务器与云服务器的区别
  9. 基于QT学生管理系统
  10. 关于虚拟机复制文件时:无法确定本地文件类型。您可能没有执行此操作的权限。 正在取消文件复制操作。的决解方法
  11. Codeforces Round #469 (Div. 2) C、 Zebras
  12. 生于忧患,死于安乐。
  13. tmux鼠标配置出现错误unknown option: mode-mouse
  14. Python爬取美女主播图片适合初学者
  15. Anonympy——使用Python进行数据匿名化
  16. python编程视频剪辑_专治爱剪辑的片头片尾的脚本(Python)
  17. 最大熵模型的特征函数及约束条件
  18. 胡喜:从 BASIC 到 basic ,蚂蚁金服技术要解决两个基本的计算问题
  19. CityMaker学习教程14 水面图层的创建
  20. OAI 5G NR搭建gNB和UE(更新中)

热门文章

  1. 使用四季首页调用后 首页FLASH图片调用连接出错,解决方法
  2. MCSE2003学习之八
  3. 一切的开始源于网络的虚拟
  4. JDK源码(21)-Unsafe
  5. 网络(10)-HTTPS证书申请及配置
  6. 程序员的算法课(10)-字符串排序算法实例(纯代码)
  7. 查找 - 计算式查找法 - 哈希法
  8. sky下载 star_star sky五军之战高清无损下载 star sky 高清mv下载
  9. REEM-C的安装与启动
  10. oracle菜鸟学习之 复杂的更新语句使用