如果多个表相关,则使用sql sum命令

如果多个表相关,则使用sql sum命令,sql,Sql,我有三张桌子t1、t2、t3。 T1有一个主键p1 T2参考表T1具有主键L1和外键p1 T3参考表T2具有主键W1和外键L1 在表T2中,对于每个P1值,相应地可能有许多L1值,同时对于每个L1值,表T3中可能有许多W1值。假设表T3中有一列称为X,我需要表T3中对应L1值的X值之和 --------- --------- --------- | t1 | | t2 | | t3 | --------- ---

我有三张桌子t1、t2、t3。
T1有一个主键p1
T2参考表T1具有主键L1和外键p1
T3参考表T2具有主键W1和外键L1

在表T2中,对于每个P1值,相应地可能有许多L1值,同时对于每个L1值,表T3中可能有许多W1值。假设表T3中有一列称为X,我需要表T3中对应L1值的X值之和

--------- --------- --------- | t1 | | t2 | | t3 | --------- --------- --------- |p1 (PK)| 1 * |L1 (PK)| 1 * |W1 (PK)| | | ---- |p1 (FK)| ---- |L1 (FK)| | | (p1) | | (L1) |X | --------- --------- --------- --------- --------- --------- |t1 | t2 | t3| --------- --------- --------- |p1(主键)| 1*| L1(主键)| 1*| W1(主键)| ||------p1(FK)|------L1(FK)| ||(p1)|(L1)| X| --------- --------- --------- 假设表T3中有一列名为X,我需要求和 表T3中对应L1值的x值的

--------- --------- --------- | t1 | | t2 | | t3 | --------- --------- --------- |p1 (PK)| 1 * |L1 (PK)| 1 * |W1 (PK)| | | ---- |p1 (FK)| ---- |L1 (FK)| | | (p1) | | (L1) |X | --------- --------- --------- 这将获得T3中X的总和,其中FK L1在T2中:

SELECT SUM(X) FROM T3
WHERE L1 IN (SELECT W1 FROM T2)

您的结构并不完全清楚,但其中之一可能会让您继续:

SELECT SUM(T3.x)
FROM T1
INNER JOIN T2 on T1.P1 = T2.P1
INNER JOIN T3 ON T2.L1 = T3.L1


您的问题是什么?根据您的问题,表T3(列
L1
X
)中似乎包含了您需要的所有内容。。。请澄清…我已经添加了我认为是穷人的ER符号表的正确布局。