mysql拼接多张表数据

2022-05-12 18:01:02
SELECT 
  SUM(paid) AS sumCostPrice,
  DATE_FORMAT(createTime, '%Y-%m') AS createTimeFormate 
FROM
  `t_procurement_new` 
WHERE companyId = 39 
  AND createTime >= "2021-01-01" 
  AND createTime <= "2021-12-01" 
GROUP BY createTimeFormate 
UNION
ALL #报销 
SELECT 
  SUM(sumAppliedPrice) AS sumCostPrice,
  DATE_FORMAT(createDate, '%Y-%m') AS createTimeFormate 
FROM
  `t_order_goods_event_apply_log` 
WHERE companyId = 39 
  AND createDate >= "2021-01-01" 
  AND createDate <= "2021-12-31" 
GROUP BY createTimeFormate 
UNION
ALL #其他报销
SELECT 
  SUM(costsPrice) AS sumCostPrice,
  DATE_FORMAT(createTime, '%Y-%m') AS createTimeFormate 
FROM
  `t_orther_costs` 
WHERE companyId = 39 
  AND createTime >= "2021-01-01" 
  AND createTime <= "2021-12-31" 
GROUP BY createTimeFormate ;

使用 UNION ALL进行拼接;

请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列 。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序 必须相同。

  • 作者:Mr_ZhangAdd
  • 原文链接:https://blog.csdn.net/Mr_ZhangAdd/article/details/122211762
    更新时间:2022-05-12 18:01:02