我有以下查询:
SELECT insent.id, notifications.id
FROM insent
WHERE insent.id IN (
SELECT insent_id
FROM notifications
)
;
但这给出了一个错误:
“字段列表”中的未知列“ notifications.id”
你知道我该怎么做吗?
答案 0 :(得分:2)
如果要在一个查询中从几个表中获取数据,则应使用JOIN构造。例如:
SELECT
insent.id,
notifications.id
FROM insent
JOIN notifications ON notifications.insent_id = insent.id
如果您不想这么做,则必须从字段列表中删除notifications.id
字段
SELECT
insent.id
FROM insent
WHERE insent.id IN (
SELECT insent_id FROM notifications
)
答案 1 :(得分:2)
这里的问题是通知表不在范围内 尝试这样
SELECT
i.id,
n.id
FROM insent AS i
JOIN notifications AS n ON n.insent_id = insent.id