MySQL连接两个表并从两个表中求和

标签 mysql sql join inner-join

我有两个表,需要两个表的列总和,我尝试了但无法得到结果

表 1 交货:

表-集合: enter image description here

我的内连接查询是:

SELECT loan_collection.coll_date,
       sum(loan_collection.coloan_amo) AS coloan_amo,
       sum(loan_collection.sc_coll) AS sc_coll,
       sum(loan_collection.total_coll) AS total_coll,
       loan_collection.year,
       bag_del_rentcoll.rent_bagdel,
       bag_del_rentcoll.rent_amo,
       bag_del_rentcoll.booking,
       bag_del_rentcoll.rent_rece
FROM loan_collection AS loan_collection
INNER JOIN
  (SELECT del_date,
          sum(rent_bagdel) AS rent_bagdel,
          sum(rent_amo) AS rent_amo,
          sum(booking) AS booking,
          sum(rent_rece) AS rent_rece
   FROM bag_del_rentcoll) AS bag_del_rentcoll
GROUP BY loan_collection.coll_date

结果是: enter image description here 如您所见,它是表二中所有内容的总和。我怎样才能得到结果

enter image description here

谢谢。

最佳答案

先聚合,后加入。我想你想加入 del_date = coll_date。这是完整的查询:

SELECT 
  lc.coll_date,
  lc.sum_coloan_amo,
  lc.sum_sc_coll,
  lc.sum_total_coll,
  lc.max_year,
  bdr.sum_rent_bagdel,
  bdr.sum_rent_amo,
  bdr.sum_booking,
  bdr.sum_rent_rece 
FROM 
(
  SELECT
    coll_date,
    SUM(coloan_amo) AS sum_coloan_amo
    SUM(sc_coll) AS sum_sc_coll,
    SUM(total_coll) AS sum_total_coll,
    MAX(year) AS max_year
  FROM loan_collection
  GROUP BY coll_date
) lc
INNER JOIN
(
  SELECT 
    del_date,
    sum(rent_bagdel) AS sum_rent_bagdel,
    sum(rent_amo) AS sum_rent_amo,
    sum(booking) AS sum_booking,
    sum(rent_rece) AS sum_rent_rece
  FROM bag_del_rentcoll
  GROUP BY del_date
) bdr ON bdr.del_date = lc.coll_date;

关于MySQL连接两个表并从两个表中求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42110857/

相关文章:

sql - 何时使用 JOIN

mysql - 自动将每 10 分钟生成的 Web 应用程序日志加载到 mysql

mysql - Apache Solr 数据源配置错误

mysql - 添加 DATE 和 TIME 字段以获取 MySQL 中的 DATETIME 字段

sql - 查找与最小/最大关联的行,无需内循环

python - 如何在Python中将第二行连接到第一行末尾?

安卓 : How to send data to remote database without using PHP or any webservices?

mysql - 将相同字段添加到多个表的最佳做法是什么?

sql - PostgreSQL 优化 : running select queries on preselected subset

ruby-on-rails - PG::UndefinedTable: 错误: 缺少 FROM 子句 — 使用两个模型进行搜索 Rails