【发布时间】:2019-02-28 10:07:40
【问题描述】:
简介
我请你不要生气:StackOverflow 有很多以这个标题命名的主题。我重新阅读了它们,但我仍然有问题。也许我做错了什么,或者我有旧版本的 DBMS(我有 10.1.30 MariaDB)。
表格
1.@events_tag
id,
title
2.@events_tag_rel
event_id,
tag_id
2.@sessions
id,
event_id,
date_start
查询
SELECT et.* FROM events_tag et
WHERE EXISTS
(
SELECT a_s.id FROM sessions a_s
LEFT JOIN events_tag_rel a_etr ON a_etr.tag_id = et.id
WHERE a_s.event_id = a_etr.event_id AND a_s.date_start >= NOW()
)
问题
我需要在子查询中使用来自主查询的数据。 具体来说,我正在尝试执行以下操作:从表 @events_tag 中获取与表 @events_tag_rel 存在关系的所有行(按列 @tag_id) 和表 @sessions(按列 @event_id)。
但我收到一条错误消息:
“on 子句”中的未知列“et.id”
【问题讨论】: