嗨,我卡住了,试图搜索两个表,并获得我需要的结果,我有一个表的资格与用户的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')但是我得到了错误任何想法该怎么做
谢谢
发布于 2016-08-27 04:10:48
这应该可以工作,但我还没能测试它。如果没有,请让我知道发生了什么错误。
SELECT * FROM phpvms_aircraft
INNER JOIN phpvms_airframe_qual ON phpvms_airframe_qual.icao = phpvms_aircraft.icao
WHERE phpvms_airframe_qual.pilot_id = 1001;发布于 2016-08-27 04:13:56
你可以做一个内部连接来得到这个答案:
select * from phpvms_aircraft inner p join phpvms_airframe_qual pq on p.icao = pq.icao where ...https://stackoverflow.com/questions/39173957
复制相似问题