我有以下SQL查询,其中包含子查询:
SELECT * FROM `statics` WHERE `mmsi`=
(SELECT `mmsi` FROM `positions`,`active`
WHERE `active.mmsi` = `positions.position_ID`);
但是当我执行它时,我收到以下错误:
1052 - 专栏' mmsi'在字段列表中是不明确的
请帮我调整查询。
答案 0 :(得分:3)
没有看到你的表结构,这是一个疯狂的猜测:
SELECT *
FROM `statics`
WHERE `statics.mmsi` = (SELECT `active.mmsi`
FROM `positions`,`active`
WHERE `active.mmsi` = `positions.position_ID`);
但我不明白你为什么要用子查询做这件事。这个应该产生相同的结果
SELECT statics.*
FROM `statics`, `positions`
WHERE `statics.mmsi` = `positions.position_ID`;