簡體   English   中英

是否有更有效的查詢來檢查自聯接中的多個條件?

[英]Is there a more efficient query to check multiple conditions in a self-join?

問題是要找到一個 state,其中發生了所有三種交通方式。因此,在列出不同旅行詳細信息的表中 - 您想要返回一個 state,其 TripID 為汽車旅行、飛機旅行和火車旅行. 以下是我當前的查詢

我的問題 - 雖然這回答了問題,但在自加入的范圍內是否有更簡潔的方式來編寫它? 我覺得嵌套子查詢只會過度補償,但這感覺就像它回答了我當前的問題,但在更大的數據庫搜索中會很混亂。

問題是找到一個state,其中所有三種運輸方式都發生過。

只需使用聚合:

SELECT T.TripState
FROM TRIP T
WHERE T.TravelMode IN ('Train', 'Plane', 'Car')
GROUP BY T.TripState
HAVING COUNT(DISTINCT T.TravelMode) = 3;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM