簡體   English   中英

MySQL union和sum兩個表

[英]MySQL union and sum two table

我需要一個顯示當天記錄的解決方案並顯示每列的SUM,到目前為止我有一個查詢來顯示聯合記錄,如:

SELECT 
    datetime, 
    remarks, 
    void, 
    invoice, 
    reload, 
    redeem 
FROM
    (
      SELECT datetime, remarks, '' void, '' invoice, points_intake reload, '' redeem, 1 ord
      FROM bpp_intake_logs
      WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
      UNION ALL

      SELECT datetime, remarks, void, invoice, '', points_consume, 2
      FROM bpp_consume_logs
      WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13' 
    ) q
ORDER BY datetime DESC, ord 

結果表顯示如下:

datetime            | remarks                        | void | invoice  | reload | redeem |
2017-06-13 15:53:31 | Point restored - void XY203460 |      |          | 10     |        |
2017-06-13 15:37:27 | reload / top-up credit         |      |          | 10     |        |
2017-06-13 15:35:56 | redeem from VIP card           |  1   | XY203460 |        | 10     |
2017-06-13 15:16:03 | redeem from VIP card           |      | XY203456 |        | 5      |

現在,我想添加一個單元格來對每個reload進行求和並在其所屬列的底部進行redeem ,例如:

datetime            | remarks                        | void | invoice  | reload | redeem |
2017-06-13 15:53:31 | Point restored - void XY203460 |      |          | 10     |        |
2017-06-13 15:37:27 | reload / top-up credit         |      |          | 10     |        |
2017-06-13 15:35:56 | redeem from VIP card           |  1   | XY203460 |        | 10     |
2017-06-13 15:16:03 | redeem from VIP card           |      | XY203456 |        | 5      |
                                                                       | 20     | 15     |

如圖所示,SUM 2015分配在底部單元格中。

這有可能以這種方式獲得結果嗎?

也許這就是你要找的????

SELECT 
datetime, 
remarks, 
void, 
invoice, 
SUM(reload), 
SUM(redeem) 
FROM
(
  SELECT datetime, remarks, '' void, '' invoice, points_intake reload, '' redeem, 1 ord
  FROM bpp_intake_logs
  WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13'
  UNION ALL

  SELECT datetime, remarks, void, invoice, '', points_consume, 2
  FROM bpp_consume_logs
  WHERE outlet = 'KUL' AND DATE(datetime) = '2017-06-13' 
) q
GROUP BY datetime desc, remarks asc, void asc, invoice asc with rollup

ORDER BY datetime DESC, ord 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM