美文网首页我爱编程
MySQL简单的列转行

MySQL简单的列转行

作者: hisenyuan | 来源:发表于2018-04-09 09:57 被阅读0次

一个字段有多个状态,统计不同状态下的数据
利用CASE WHEN这种语法实现
列转行的一个简单应用

select
  d.customer_id,
  d.country_code,
  CONVERT(d.create_time, Date) createTime,
  CASE d.send_status WHEN '1' THEN count(d.customer_id) ELSE 0 END AS 'succ',
  CASE d.send_status WHEN '2' THEN count(d.customer_id) ELSE 0 END AS 'fail',
  CASE d.send_status WHEN '3' THEN count(d.customer_id) ELSE 0 END AS 'unknown',
  sum(d.sms_fee) fee
from sms_customer_send_detail d
group by createTime, d.customer_id, d.country_code, d.send_status

结果

+-------------+--------------+------------+------+------+---------+-----+
| customer_id | country_code | createTime | succ | fail | unknown | fee |
+-------------+--------------+------------+------+------+---------+-----+
| hisenyuan   | 65           | 2018-04-08 |   25 |    0 |       0 | 400 |
| hisenyuan   | 65           | 2018-04-08 |    0 |    0 |      10 | 160 |
| hisenyuan   | 86           | 2018-04-08 |    1 |    0 |       0 | 10  |
+-------------+--------------+------------+------+------+---------+-----+

相关文章

  • MySQL简单的列转行

    一个字段有多个状态,统计不同状态下的数据利用CASE WHEN这种语法实现列转行的一个简单应用 结果

  • mysql 列转行

    mysql 的group_concat函数很好用,可以把列转成行。 SELECT threadid, group_...

  • mysql列转行

    需求:将表 idcolumn1A,B,C2D,E 转为表 idcolumn1A1B1C2D2E 新建表:test ...

  • MySql列转行的技巧

    转载地址:https://www.cnblogs.com/thomas12112406/p/5813394.htm...

  • mysql列转行(逗号分隔)

    mysql查询含逗号的数据,将逗号拆分为多行展示: 原始数据如下: IDVALUE1yang,zheng,song...

  • MySQL行转列,列转行

    参考: MySQL行转列实现和总结 mysql中列转行,并多个字段转到一行中的一个字段上,中间用逗号分开 mysq...

  • mysql 列转行,合并字段

    数据表 列转行:利用max(case when then) 合并字段显示:利用group_cancat(cours...

  • mysql行转列,列转行

    一、行转列 即将原本同一列下多行的不同内容作为多个字段,输出对应内容。 建表语句 插入数据 查询数据表中的内容(即...

  • Kettle 列转行的使用

    一个简单的Kettle 列转行的示例如下: 步骤1:表输入,数据库查询输入 步骤2:列转行 步骤3:excel数据...

  • oracle列转行、列转行

    oracle列转行 SELECT REGEXP_SUBSTR('aa,bbb,cccc', '[^,]+', 1,...

网友评论

    本文标题:MySQL简单的列转行

    本文链接:https://www.haomeiwen.com/subject/jspbhftx.html