基于两个表条件的SQL MS Access求和结果
我被要求找出一张表中的总数是否超过某个值。但是,我需要将这些数据分组的标识符存储在另一个表中。因此,我想出了如何分离出我需要的内容,然后复制到excel中。但是,我确实理解SQL求和的原理,因为我自己做了如下查询:基于两个表条件的SQL MS Access求和结果,sql,join,ms-access-2007,Sql,Join,Ms Access 2007,我被要求找出一张表中的总数是否超过某个值。但是,我需要将这些数据分组的标识符存储在另一个表中。因此,我想出了如何分离出我需要的内容,然后复制到excel中。但是,我确实理解SQL求和的原理,因为我自己做了如下查询: SELECT * FROM (SELECT ID, SUM(Table1.Amount) AS Subtotal FROM Table1 WHERE LineNumber = 1 GROUP BY ID) AS a, Table2 AS b WHERE a.ID = b.ID AN
SELECT * FROM
(SELECT ID, SUM(Table1.Amount) AS Subtotal FROM Table1 WHERE LineNumber = 1 GROUP BY ID) AS a, Table2 AS b
WHERE a.ID = b.ID
AND a.Subtotal > b.Threshold
在这种情况下,我需要求和的总数都具有原始表(表1)中相同的行号,因此很容易与不同表中的值进行比较。我想做的是能够将子查询连接回原始表,然后根据另一个表的标识符和总和进行分组,添加一个条件,即表1中的原始ID必须是重复的:
SELECT * FROM
((Table1 as t
INNER JOIN
(SELECT ID FROM Table1
GROUP BY ID HAVING COUNT(ID) >1) as b
ON t.ID = b.ID
将条件连接回原始表,我需要这样做,因为我需要求和的表不包含ID
INNER JOIN Table2 as c
ON t.ID2 = c.ID2
WHERE c.LineNumber = 4
这就是我被困的地方。我想对每个ID的所有行号求和=4。同样,我必须使用ID2加入,因为ID1不在表2中
也许我把事情弄得太复杂了?欢迎提出任何建议
谢谢 你能举一个你的模式/数据的例子吗?你是什么意思?一般来说,我对数据库不是很有经验。