這是我的選擇查詢:選擇查詢具有鮮明的上一米田
SELECT
[T1].[Id], [T2].[Id] , [T3].[Id]
FROM [T1]
INNER JOIN [T2] On [T1].[Id] = [T2].[T1Id]
INNER JOIN [T3] On [T2].[Id] = [T3].[T2Id]
結果是:
1 1 1
1 2 2
1 2 3
2 3 4
2 3 5
3 4 1
但我需要的是[T1].[Id]
事情是這樣的不同:
1 1 1
2 3 4
3 4 1
這是不重要的第一個記錄的Id返回,所以結果可能是:
1 2 2
2 3 4
3 4 1
,但重要的是,每條記錄的列有一個邏輯關係,所以我不能使用Min
或Max
功能。我認爲的第一個解決方案是將值插入臨時表並刪除重複項。
但我認爲這必須是更好的方法?在選擇查詢中的東西。
有沒有人有這方面的想法?
你要哪的1行的? '1 1 1','1 2 2'還是'1 2 3'?更重要的是,爲什麼? (也就是說,不要說「第一個」,比如說「第三列最高的那個,或者可以通過程序檢查的東西) –
正如Lasse所說的,在數據庫方面,返回哪些數據總是很重要。即使你不在意,你也需要知道爲什麼。基本上,如果它返回1,1,1或1,2,3並不重要,那麼爲什麼它會返回第二個和第三個值所有,因爲你無法從中提取可靠的數據?除非你只是檢查T1是否被T2和T3引用,這也是必要的信息,可以影響這裏的規格:) – Kahn
@ LasseV.Karlsen我得到你說的是什麼,但是假設我只需要T1,T2,T3之間的關係,這很重要,不是哪個關係。 –