zoukankan      html  css  js  c++  java
  • mysql行转列(多行转一列)

    场景

      比如说一个订单对应多条数据,当状态(status)=1的时候,  数量(num)=25,当状态(status)=2的时候,  数量(num)=45,现在想用一条sql记录下不同状态对应的数量为多少,如下图所示:

      

      期待结果->

      

    sql语句示例 

    SELECT trades_id,
    MAX(CASE WHEN apply_status=1 THEN pay_change ELSE 0 END) 'num_status1',
    MAX(CASE WHEN apply_status=2 THEN pay_change ELSE 0 END) 'num_status2'
    FROM b_balance_detail
    WHERE site_id=100190 
    AND apply_status!=4 AND trades_id = 1001901531475622312 
    //上述sql是查询了一个订单的情况,当多个时应当加个group by进行分组查询 如下:
    SELECT trades_id,
    MAX(CASE WHEN apply_status=1 THEN pay_change ELSE 0 END) 'num_status1',
    MAX(CASE WHEN apply_status=2 THEN pay_change ELSE 0 END) 'num_status2'
    FROM b_balance_detail 
    group by trades_id
    

      

  • 相关阅读:
    vb移动窗体的代码
    vb得到一个进程的启动参数?
    UTF8方式读写文件的模块
    JavaScript中Window.event详解
    vb设置窗体不可移动
    一拖二
    实习第一天
    사랑해
    决定考研
    Eclipse快捷键
  • 原文地址:https://www.cnblogs.com/chenpt/p/9316854.html
Copyright © 2011-2022 走看看