MYSQL多行合并成一行多列

摘要:
原始数据:idcodenamevalue---------------------------------------------------------1201400A1022014000B932014001C10042014002D452014002E562014003F972014003G10预期结果:codename1value1name2value2-----------------------------------------------
原数据:
idcodenamevalue
-----------------------------
12014000A10
22014000B9
32014001C100
42014002D4
52014002E5
62014003F9
72014003G10
期望结果:
codename1value1name2value2
-----------------------------------------------
2014000A10B9
2014001C100nullnull
2014002D4E5
2014003F9G10
注意:同1个ID最多只2条记录,会出现相同value。
CREATE
TABLE # (ID INT, code INT, NAME CHAR(1), VALUE VARCHAR(10)) INSERT INTO # VALUES (1,2014000,'A','10'), (2,2014000,'B','9'), (3,2014001,'C','100'), (4,2014002,'D','4'), (5,2014002,'E','5'), (6,2014003,'F','9'), (7,2014003,'G','10') SELECT code,MIN(name) AS name1,MIN(CAST(REPLACE(value,' ','') AS INT)) ASvalue1, CASE COUNT(ID) WHEN 1 THEN NULL ELSE MAX(name) END ASname2, CASE COUNT(ID) WHEN 1 THEN NULL ELSE MAX(CAST(REPLACE(value,' ','') AS INT)) END ASvalue2 FROM # GROUP BY code

免责声明:文章转载自《MYSQL多行合并成一行多列》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Maven学习一:用Maven创建Java ProjectRedis:主从复制下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql中的union用法以及子查询综合应用

union查询就是把2条或者多条sql语句的查询结果,合并成一个结果集。 如:sql1: N行,sql2: M行,sql1 union sql2 ---> N+M行 1、能否从2张表查询再union呢? 可以,union 合并的是"结果集",不区分在自于哪一张表. 2、取自于2张表,通过"别名"让2个结果集的列一致。那么,如果取出的结果集,列名字不...

hadoop 常存问题

经常遇到的exception是:PipeMapRed.waitOutputThreads(): subprocess failed with code N "OS error code 1: Operation not permitted" "OS error code 2: No such file or directory" "OS error co...

mysql主从之主键冲突

收到短信报警,两台数据库都报slave同步失败了,先说明一下环境,架构:lvs+keepalived+amoeba+mysql,主主复制,单台写入, 主1:192.168.0.223(写) 主2:192.168.0.230 好吧,先show slave status G看一下同步失败的具体报错吧 登录主2库查看: mysql> show slave...

MySQL 8.0.17 版安装 || Windows

Mysql 8.0.17 安装 1.mysql下载 选择对应的下载地址:https://www.mysql.com/downloads/ 这里下载的是mysql-8.0.17-winx64.zip 2.解压 解压并创建my.ini和data文件夹 basedir替换成自己的解压路径 my.ini [client] # 设置mysql客户端默认字符集...

如何监控MYSQL消耗服务器资源

http://258xiaolei-sina-com.iteye.com/blog/764665 启动Mysql时加参数--log-slow-queries来记录执行时间超过long_query_time秒的sql MySQL 自带 slow log 的分析工具 mysqldumpslow。 slow log 是 MySQL 根据 SQL 语句的执行时...

mysql 删除重复数据只保留一条记录

删除重复数据保留name中id最小的记录 delete from order_info where id not in (select id from (select min(id) as id from order_info group by order_number) as b); delete from table where id not in...