有A表和B表
A B
ID ID
5 5
6 7
7 8
8 10
9
10
希望对比A表和B表中ID号差异的部分取出最大值结果应该是9,这个语句应该怎么写?
------解决思路----------------------
你试下
SELECT MAX(ISNULL(A.ID,B.ID))ID FROM A FULL JOIN B ON A.ID = B.ID WHERE A.ID IS NULL OR B.ID IS NULL
------解决思路----------------------
DECLARE @A TABLE(ID INT);
INSERT @A
SELECT 5 UNION ALL
SELECT 6 UNION ALL
SELECT 7 UNION ALL
SELECT 8 UNION ALL
SELECT 9 UNION ALL
SELECT 10;
DECLARE @B TABLE(ID INT)
INSERT @B
SELECT 5 UNION ALL
SELECT 7 UNION ALL
SELECT 8 UNION ALL
SELECT 10;
WITH DIF AS
(
SELECT a.id FROM @A a LEFT JOIN @B b ON a.ID = b.ID WHERE b.id is null
)
SELECT MAX(id) FROM dif