我无法解释这个,我举了一个例子。
表1
Client_ID |Name |Sector | ----------|---------|---------| 40302025 |Peter |commerce | 40302028 |Paul |business | 40302030 |Moreno |Services | 40302055 |Jack |commerce | 40302074 |Mark |Services |
表2
Client_ID |Name |Dollars | ----------|---------|----------| 40302025 |Peter |200.000,00| 40302025 |Peter |300.000,00| 40302028 |Paul |200.000,00| 40302028 |Paul |200.000,00| 40302030 |Moreno |100.000,00| 40302030 |Moreno |200.000,00| 40302030 |Moreno |500.000,00| 40302055 |Jack |10.000,00 | 40302055 |Jack |20.000,00 | 40302055 |Jack |500.000,00| 40302055 |Jack |30.000,00 | 40302074 |Mark |20.000,00 | 40302074 |Mark |5.000,00 | 40302074 |Mark |10.000,00 | 40302074 |Mark |20.000,00 | 40302074 |Mark |40.000,00 |
现在我想要使用这个结果来引用table2.sector的Table2.Dollars:
结果
Sector |Total_dollars| ----------|-------------| commerce |1.060.000,00 | Services |895.000,00 | business |400.000,00 |
第一行:彼得和杰克(两者都在“商业”部门)的美元总和
第二行:Moreno和Mark的美元总和(两者都在“服务”部门)
第三行:仅保罗(“商业”部门)的美元总和
注意:表2中我没有“扇区”字段
我快要发疯了
我认为加入一个加入......等等......我不知道如何开始
有什么想法吗?
非常感谢
的奥斯卡
答案 0 :(得分:4)
这实际上非常简单:
SELECT t1.sector,SUM(t2.dollars)
FROM table1 t1
INNER JOIN table2 t2 ON t1.client_id = t2.client_id
GROUP BY t1.sector;
JOIN
使两个表中的所有列都可供您使用。:
Table1 | Table2
----------|---------|---------|----------|---------|----------|
Client_ID |Name |Sector |Client_ID |Name |Dollars |
----------|---------|---------|----------|---------|----------|
40302025 |Peter |commerce |40302025 |Peter |200.000,00|
40302025 |Peter |commerce |40302025 |Peter |300.000,00|
...
然后,你想要的是table1中的扇区和table2中的SUM
美元。然后,您GROUP BY
扇区,以便为每个扇区计算SUM的结果。
p.s。:您应该只在一个表中使用客户端名称,并且只要您想引用该客户端就使用client_id。