您好我一直在尝试搜索两个表并获得我需要的结果我有一个表,其中包含用户 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;
关于mysql - SQL 查询搜索 2 个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39173957/