Php 列的总和在联接表中不起作用

Php 列的总和在联接表中不起作用,php,mysql,sum,left-join,union,Php,Mysql,Sum,Left Join,Union,我正试图从表1和表2中计算req\u数量和in\u数量。 我正在尝试获取连接的3个表数据SUM(req\u数量),SUM(in\u数量)。如果request.qty未保存在table2中,则会出现问题,它将不起作用。我被这个sku的ID留在了表格中 我在这里制作了一个非常简单的表格,用于计算列的和。通常,列的总和乘以总行数。 请不要关闭其他帖子的帖子和帮会。为了澄清我的疑问,我在这里做了一张我能理解的表格。请帮忙 table1 ID | sku_1 | req_qty | trans_id

我正试图从
表1
表2
中计算
req\u数量
in\u数量
。 我正在尝试获取连接的3个表数据
SUM(req\u数量)
SUM(in\u数量)
。如果
request.qty
未保存在
table2
中,则会出现问题,它将不起作用。我被这个
sku的ID留在了表格中

我在这里制作了一个非常简单的表格,用于计算列的和。通常,列的总和乘以总行数。 请不要关闭其他帖子的帖子和帮会。为了澄清我的疑问,我在这里做了一张我能理解的表格。请帮忙

table1

ID  |  sku_1 | req_qty | trans_id
----------------------------------
1   |  123   | 150     | 12345
2   |  142   | 200     | 256314
3   |  123   | 100     | 896523
表2

ID  | sku_2  | in_qty  | trans_key
-----------------------------------
1   | 142    | 50      | 002563
表3

ID |  sku_code  |  sku_name
--------------------------
1  | 142        |  ABC
2  | 123        |  XYZ
预期产量

ID | sku | sku_name | reqQty | inQty 
------------------------------------
1  | 123 | XYZ      | 250    | 0        
2  | 142 | ABC      | 200    | 50

编辑以在表1和表2为空时选择数据

SELECT table1.id, table3.sku_code as sku, table3.sku_name, 
       sum(table1.req_qty) as reqQty, sum(table2.in_qty) as inQty
  FROM table3
  LEFT JOIN table1 on table3.sku_code = table1.sku_1
  LEFT JOIN table2 on table3.sku_code = table2.sku_2
  GROUP BY table1.id, table3.sku_code, table3.sku_name
解释

您可以在这里看到关于左连接如何工作的解释


但为了快速解释此查询,我们将从表3中选择所有数据,左连接将从左表(此处为表3)中查找所有记录,并从右表(此处为表2和表1)中对记录进行匹配。

您能否共享查询,甚至创建一个小提琴?推荐阅读:而且,我尽了最大努力详细阐述了这个问题。甚至我也试着做桌子。我有StackOverflow的经验,当我共享fiddle无人打开的链接并将其标记为关闭、重复时,如何改进标记?等等。我不知道为什么人们讨厌meNobody讨厌你。我们没有理由对你有任何私事。我们根据这个问题来判断。您的问题不会因为有小提琴而关闭,如果它只有小提琴,它可能会关闭(创建模式的代码需要包含在问题中),如果不清楚或可能找到了配件副本。假设
table1
tale2
为空,我如何在您的代码中获取
table3
数据请帮助…查看我的上面的编辑如果table2将填充,您的代码将进行求和?查看我的求和编辑,我认为您需要阅读一些关于如何编写sql查询的文档