sql - SQL Server 中 2 个表的公共(public)记录

标签 sql sql-server

我有 2 个表。这两个表都包含 2 列:idamt。 表 1 有这些数据:

id, amt
1,  500;
2,  2000;
4,  1000.

表 2 包含:

id, amt
1,  100;
1,  100;
1,  100;
1,  100;
1,  100;
2,  250;
3,  300;
4,  1000;

现在我的要求是在两个表中获取共同id和共同amt的记录。但这里的挑战是,id 1 在两个表中都可用。但是表 2 中 ID 为 1 的 sum(amt) = 表 1 中 ID 为 1 的 amt。我还需要将该记录作为公共(public)记录提取。请帮助我。谢谢。

最佳答案

SELECT id, amt
FROM Table1
INTERSECT
SELECT id, SUM(amt)
FROM Table2
GROUP BY id

关于sql - SQL Server 中 2 个表的公共(public)记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7836242/

相关文章:

SQL Server 和 Identity 列中的间隙

sql-server - 检查第一行日期是否在下一行日期之间

mysql - 尽管加入了索引键,但 MySQL (InnoDB) 查询速度很慢,为什么?

java - 使用 CASE 表达式的 JOOQ 排序

sql-server - SQL Server 在 nvarchar 字符串内部搜索时使用高 CPU

SQL 服务器 2000 : Length of field in 1/3 (or 2/3) of the records

sql - 如何在 SQL Server 2008 中的存储过程中编写游标

sql-server - 'COLLATE SQL_Latin1_General_CP1_CI_AS' 是做什么的?

执行两个 GROUP BY 的 SQL 查询?

mysql - 将自动增量 ID 添加到现有表?