mysql 列数据显示转成行数据显示_Mysql的列修改成行并显示数据的简单实现

2016102410160410.png

创建测试表:

DROP TABLE IF EXISTS `test`;

CREATE TABLE `test` (

`year` int(11) DEFAULT NULL,

`month` int(11) DEFAULT NULL,

`amount` double DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

插入数据:

INSERT INTO `test` VALUES ('1991', '1', '1.1');

INSERT INTO `test` VALUES ('1991', '2', '1.2');

INSERT INTO `test` VALUES ('1991', '3', '1.3');

INSERT INTO `test` VALUES ('1991', '4', '1.4');

INSERT INTO `test` VALUES ('1992', '1', '2.1');

INSERT INTO `test` VALUES ('1992', '2', '2.2');

INSERT INTO `test` VALUES ('1992', '3', '2.3');

INSERT INTO `test` VALUES ('1992', '4', '2.3');

看到题目要求,仔细想想可以:

利用SUM(IF()) 生成列 + WITH ROLLUP 生成汇总行,并利用 IFNULL将汇总行标题显示为 Total_num

实现

SQL代码块如下:

select year,

sum(if(month=1,amount,0)) as "M1",

sum(if(month=2,amount,0)) as "M2",

sum(if(month=3,amount,0)) as "M3",

sum(if(month=4,amount,0)) as "M4"

from test

GROUP by year;

效果如下:

2016102410160511.png

以上所述是小编给大家介绍的Mysql的列修改成行并显示数据的简单实现,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:MYSQL必知必会读书笔记第三章之显示数据库

jQuery+Ajax+PHP+Mysql实现分页显示数据实例讲解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/397760.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android两种常见错误(ANR和FC)解决办法

ANR(Activity Not Respone)(无响应)先介绍下Main线程(也称为UI线程、主线程)功能: 1.创建UI控件2.更新UI控件状态3.事件处理限制:Main线程不建议有超过5秒的事件出现条件:当用户输入事件5s内没有得到响应,将弹出ANR对话…

mysql命令(command)

连接mysql命令: mysql -h 192.168.1.1 -P 3306 -uuserName -pPassword 显示表的索引: SHOW INDDEX FROM table_name 查看mysql的超时时间:SHOW GLOBAL VARIABLES LIKE %timeout% 备份表结构和表数据:mysqldump -u用户名 -p 库名 表1 表2 > xxx.sql只…

微信5.0登录提示服务器繁忙,iOS集成友盟社会化分享微信无法登录?

iOS集成友盟社会化分享SDK-5.0点击微信登录的时候出现无法获取accessToken的现象,其他如QQ、微博都可以正常登录使用。另外QQ、微博和微信分享都可以正常使用。望各位早日帮我解决或者分析一下。谢谢//微信登录之后的回调- (BOOL)application:(UIApplication *)appl…

sql获取某列出现频次最多的值_业务硬核SQL集锦

戳上方蓝字关注我 这两年学会了跑sql,当时有很多同学帮助我精进了这个技能,现在也写成一个小教程,反馈给大家。适用对象:工作中能接触到sql查询平台的业务同学(例如有数据查询权限的产品与运营同学)适用场景:查询hive&…

void ,NULL与0的区别联系

void ,NULL及0的区别联系 void的详解: void的字面意思是“无类型”或“空类型”,void*则为“无针型指针”,那就意味着void*可以指向任何类型的数据。 众所周知,如果指针p1和p2的类型相同,那么我们可以直接在p1和p2间互相赋值&…

python 2 days

1,格式化输出,%s %d 2,复习昨日讲题 编译型: 将代码一次性全部编译成二进制,然后运行。 优点:执行效率高。 缺点:开发效率低,不能跨平台。 C解释型: 代码…

nginx编译安装与配置使用

第一部分----nginx基本应用源码编译安装nginx1、安装pcre软件包(使nginx支持http rewrite模块)yum install -y pcre yum install -y pcre-devel2、安装openssl-devel(使nginx支持ssl)yum install -y openssl-devel3、创建用户ngin…

ubuntu+查看服务器文件夹权限,Ubuntu - 文件夹权限查看与修改

Ubuntu 文件的归属身份有四种:u - 拥有文件的用户(所有者)g - 所有者所在的组群o - 其他人(不是所有者或所有者的组群)a - 每个人或全部(u, g, o)1. 查看文件/文件夹权限ls -l filename # 查看文件权限ls -ld folder # 查看文件夹权限输出结果如:drwxrwx…

mysql dump 1449_跨版本mysqldump恢复报错Errno1449

已经有一套主从mysql,新增两个slave主库Server version: 5.6.22-log MySQL Community Server (GPL)旧从库Server version: 5.6.28-log MySQL Community Server (GPL)新增SLAVE 1: Server version: 5.6.22-log MySQL Community Server (GPL)新增SLAVE 2: …

修复 Xcode 错误 “The identity used to sign the executable is no longer valid”

如图: 解决方法来自:http://stackoverflow.com/questions/7088441/the-identity-used-to-sign-the-executable-is-no-longer-valid/14275197 Restarting Xcode didnt work for me. What fixed it for me was going to Accounts in Xcode (in preferences…

centos设置ip

这里是centos7.vmware安装centos后需要设置ip 1.首先查看虚拟机的网络适配器信息 2.根据信息修改配置文件 vi /etc/sysconfig/network-scripts/ifcfg-ens33 图为修改后的,最初的配置为 BOOTPROTOdhcp ONBOOTno IPADDR,GATEWAY,NETMASK没有进行配置需要根据网络适配器配置手动维…

微信支付+服务器+php代码,php 微信支付企业付款(示例代码)

/*** 格式化参数格式化成url参数*/public function ToUrl($arr){$buff "";foreach ($arr as $k > $v){if($k ! "sign" && $v ! "" && !is_array($v)){$buff . $k . "" . $v . "&";}}$buff trim($b…

Spark踩坑记——数据库(Hbase+Mysql)转

转自:http://www.cnblogs.com/xlturing/p/spark.html 前言 在使用Spark Streaming的过程中对于计算产生结果的进行持久化时,我们往往需要操作数据库,去统计或者改变一些值。最近一个实时消费者处理任务,在使用spark streaming进行…

解决Failed to connect session for conifg 故障

服务器升级openssh之后jenkins构建报错了,报错信息如下: Failed to connet or change directory jenkins.plugins.publish_over.BapPublisherException:Failed to connect session for config.....Message [Algorithm negotiation fail] 升级前ssh版本&a…

78oa mysql_78oa系统版本升级方法

可升级版本预览升级方法:1、备份数据库、附件目录、二次开发程序打开开始菜单——控制面板——管理工具——服务,右键点击停止 78oa mysql service 服务,完整复制【D:\78OA\server\modules\storage\data\78oa】(数据库)文件夹至备份区域。完整…

Excel导出显示服务器意外,C# 调用Excel 出现服务器出现意外状况. (异常来自 HRESULT:0x80010105 (RPC_E_SERVERFAULT)...

C# 调用Excel 出现服务器出现意外状况. (异常来自 HRESULT:0x80010105 (RPC_E_SERVERFAULT)htmlprivate Microsoft.Office.Interop.Excel.Application xApp;private Microsoft.Office.Interop.Excel.Workbook xBook;服务器//变量xApp new Microsoft.Office.Interop.Excel.Appl…

列表、元组、字典、集合的定义、操作与综合练习

l[A,B,C] t{A,B,C}l.append(B)print(l)scores[66,77,88]d{A:66,B:77,C:88} d[B]99 d[D]111 d.pop(C) print(d)s1{A,B,C} s2{A,C,D} print(s1&s2) print(s1|s2) 转载于:https://www.cnblogs.com/chenjunyu666/p/9147417.html

xargs

find /tmp/ -name "*.log" -mtime 4 | xargs -i -t mv {} /home/ find /tmp/ -name "*.log" -mtime 4 -print0 | xargs -0 rm -f xargs(1) xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。它把一个数据流分割为一些足够小的块…

export mysql home_mysql的Linux下安装笔记

注:在5.7之后MySQL不在生成my-default.cnf配置。tar -xzvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gzmv mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz/ /usr/local/mysql新建 useradd mysql新建文件夹mkdir /usr/local/mysql/data生成配置:./mysqld -…

[转]DevExpress GridControl 关于使用CardView的一点小结

最近项目里需要显示商品的一系列图片,打算用CardView来显示,由于第一次使用,遇到许多问题,发现网上这方面的资源很少,所以把自己的一点点实际经验小结一下,供自己和大家以后参考。 1、选择CardView&#xf…