簡體   English   中英

SQL查詢搜索2個表

[英]SQL Query Search 2 tables

嗨我卡住試圖搜索兩個表並獲得我需要的結果我有一個表與用戶ID的資格,以及如下所示:

表名:phpvms_airframe_qual

id    pilotid   airframe   icao
0       1001      name     tutr
1       1001      name     eufi
2       1002      name     tutr
3       1002      name     king
4       1001      name     a400

表名:phpvms_aircraft

id    fullname   icao    registration
0       tutor    tutr        G-BXEX
1      typhoon   eufi        ZJ932
2       tutor    tutr        G-DXRT
3      kingair   king        ZZ990
4       atlas    a400        ZM400

我需要做的是獲得一個飛機列表,但只顯示用戶有資格的飛機。 因此,用戶1001將從示例中顯示以下內容:

id    fullname   icao    registration
0       tutor    tutr        G-BXEX
1      typhoon   eufi        ZJ932
2       tutor    tutr        G-DXRT
4       atlas    a400        ZM400

和1002將顯示以下內容:

id    fullname   icao    registration
0       tutor    tutr        G-BXEX
2       tutor    tutr        G-DXRT
3      kingair   king        ZZ990

我努力了:

SELECT * FROM `phpvms_aircraft` WHERE phpvms_aircraft.icao = (SELECT icao FROM `phpvms_airframe_qual` WHERE pilotid = '1001')

但我得到錯誤任何想法如何做到這一點

謝謝

這應該工作,但我無法測試它。 如果沒有,請告訴我,以及出現了什么錯誤。

SELECT * FROM phpvms_aircraft
    INNER JOIN phpvms_airframe_qual ON phpvms_airframe_qual.icao = phpvms_aircraft.icao
    WHERE phpvms_airframe_qual.pilot_id = 1001;

您可以進行內部聯接以獲得此答案:

 select * from phpvms_aircraft inner p join phpvms_airframe_qual pq on p.icao = pq.icao where ...

暫無
暫無

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

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