MySQL 資料底部出現總計字樣 第二種辦法 縱向合并 20161103

來源:互聯網
上載者:User

標籤:rollup   span   mysql   代碼   http   image   png   mysq   money   

上次在部落格http://www.cnblogs.com/Mr-Cxy/p/5923375.html

我們使用了group by with rollup 函數 field自訂排序 來實現添加底部總計字樣,代碼很長,

再有就是我們使用縱向合并 union all 函數 ifnull sum(if())函數來實現縱向合并添加總計字樣

 

SELECT IFNULL(f.城市,"總計") AS 城市,f.7月金額,f.8月金額,f.9月金額FROM (    SELECT e.*    FROM (        SELECT b.城市,SUM(IF(b.年月=201607,b.金額,NULL)) AS 7月金額,SUM(IF(b.年月=201608,b.金額,NULL)) AS 8月金額,SUM(IF(b.年月=201609,b.金額,NULL)) AS 9月金額        FROM (         SELECT city AS 城市,DATE_FORMAT(order_time,"%Y%m") AS 年月,SUM(pay_money) AS 金額         FROM test_a03order AS a         GROUP BY city,DATE_FORMAT(order_time,"%Y%m")        ) AS b        GROUP BY b.城市     ) AS e    UNION ALL(        SELECT SUM(IF(1=2,0,NULL)) AS 城市,SUM(IF(d.年月=201607,d.金額,NULL)) AS 7月金額,SUM(IF(d.年月=201608,d.金額,NULL)) AS 8月金額,SUM(IF(d.年月=201609,d.金額,NULL)) AS 9月金額        FROM (            SELECT city AS 城市,DATE_FORMAT(order_time,"%Y%m") AS 年月,SUM(pay_money) AS 金額            FROM test_a03order AS c            GROUP BY city,DATE_FORMAT(order_time,"%Y%m")        ) AS d    ) ) AS f

 

MySQL 資料底部出現總計字樣 第二種辦法 縱向合并 20161103

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.