SQL Server中是否有一种方法可以将一个表的整行与另一个具有相同数据类型的表进行比较.
例:
CREATE TABLE [DBO].[PRODUCT]
(
[PID] [INT] NULL,
[NAME] [NCHAR](10) NULL,
[PDID] [INT] NULL
)
Run Code Online (Sandbox Code Playgroud)
select * from product p, product c where p.{entirerow} = c.{entirerow}
这里有什么选择吗?
Sim*_*mon 14
使用SQL INTERSECT(所有匹配的行)和EXCEPT(所有不同的行),例如:
SELECT * FROM Table1 INTERSECT SELECT * FROM Table2
SELECT * FROM Table1 EXCEPT SELECT * FROM Table2
Run Code Online (Sandbox Code Playgroud)
您可以通过使用WHERE子句将*替换为列列或行的子集来比较列的子集.
需要注意的是,表的模式必须相同.