【发布时间】:2015-04-17 12:40:07
【问题描述】:
我在尝试访问子查询的子查询中的选定字段时遇到错误。它显示“where 子句中的未知列”。我还有其他使用相同字段的子查询,它们工作得很好。只有当我尝试在子查询中访问子查询中的字段时,才会出现此问题。
我的查询的简化版本
SELECT r.id,
(SELECT min(begindatum)
FROM ((SELECT begindatum FROM reservatiekamer
WHERE reservatieId = r.id) UNION
(SELECT begindatum FROM reservatiefaciliteit
WHERE reservatieId = r.id)) as bg)
as begindatum
FROM reservatie r
错误
#1054 - Unknown column 'r.id' in 'where clause'
背景故事,我正在尝试选择存在多个房间和设施预订(2 张不同桌子)的预订的开始日期。
【问题讨论】:
-
你的意思是
FROM reservatie AS r? -
在 MySQL 中 AS 不是可选的吗?
-
AS 在 MySQL 中确实是可选的。我在完整查询中的很多地方都使用了“r”,除了在子查询的子查询中,它不会导致任何问题。