1
在這個例子中,我加入了兩個表格。最佳做法內部選擇
DECLARE @AA TABLE
(
A1 INT,
A2 INT
)
DECLARE @BB TABLE
(
B1 INT,
B2 INT
)
INSERT INTO @AA values (1,1)
INSERT INTO @AA values (2,2)
INSERT INTO @AA values (3,3)
INSERT INTO @BB values (1,1)
INSERT INTO @BB values (2,2)
INSERT INTO @BB values (3,3)
SELECT A1, A2, B1, B2 from @AA a
JOIN @BB b on b.B1 = a.A1
where 1=1
and a.A1 in (1,2)
and b.B1 in (select max(bb.B1) from @BB bb JOIN @AA aa on bb.B1 = aa.A1 where aa.A1 in (1,2))
上面的代碼工作,因爲我希望得到的結果是:「2,2,2,2」
有沒有更有效的方式來做到這一點?內部選擇與外部選擇非常相似,對我來說它看起來不太好。