我有两张 table :
表1名称:买入
姓名 |名称代码 |数量 |
a 01 25
01 25
b 02 75
c 03 100
c 03 25
表2名称:Sell
姓名 |名称代码 |数量 |
b 02 60
b 02 40
c 03 80
c 03 40
d 04 45
d 04 50
那么,如何使两个表像这样连接(使用 MYSQL 查询):
姓名 |名称代码 |数量 |名称 |名称代码 |数量 |
a 01 50 (SUM) NULL NULL NULL
b 02 75 b 02 100(SUM)
c 03 125(SUM) c 03 120(SUM)
空 空 空
d 04 90(总和)
当我输入 (SUM) 时,这意味着值是 2 行的 SUM
因为这对我来说太难了,所以我非常需要帮助
请帮助我,我不知道该怎么做。非常感谢
另外,如果我需要 b < 70 或 C < 30 等条件...
最佳答案
这有点尴尬,因为 MySQL 不支持完全外连接。由于错误而编辑:
SELECT B.name, B.name_code, B.total, S.name, S.name_code, S.total
FROM (
SELECT name, name_code, SUM(number) AS total FROM buy GROUP BY name, name_code
) B LEFT JOIN (
SELECT name, name_code, SUM(number) AS total FROM sell GROUP BY name, name_code
) S ON B.name = S.name
UNION
SELECT NULL, NULL, NULL, name, name_code, SUM(number) AS total FROM sell
WHERE name NOT IN (SELECT name FROM buy)
GROUP BY name, name_code;
关于mysql - 如何使用Mysql连接两个具有不同值的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51783328/