データ :
--Table 1 :
Id ZoneName
----------- --------
20011 Name1
10027 Name1
20011 Name1
20011 Name1
20011 Name1
20074 Name1
20011 Name2
20011 Name2
10059 Name3
20011 Name2
クエリ:
Select Top 2 [Id] From Table1 -- First Query
WHERE ZoneName = 'Name1'
UNION
SELECT Top 1 [Id] from Table1 -- Second Query
WHERE ZoneName = 'Name1'
UNION
SELECT Top 1 [Id] from Table1 -- Third Query
WHERE ZoneName = 'Name1'
結果 :
Id
-----
20011
期待される結果 :
20011
10027
20074
上記のクエリから、互いに重複しない各クエリからの 3 つの結果が必要です。この場合、予想される結果には、クエリ 1 の上位 2 つ、つまり 20011 と 10027 が含まれ、次の上位 1 については、これら 2 つの結果を除外して返す必要があります。クエリ 2 の場合は 20074。
注 : この例では単一の WHERE 条件を使用しましたが、実際のクエリでは、各クエリに異なる Where 条件があり、上記のクエリと同じまたは異なる結果になる可能性があります。