我试图运行此示例查询:
SELECT * FROM (SELECT * FROM orders WHERE id > 2) AS o1 JOIN o1 AS o2 ON o1.id = o2.id;
但发生此错误:
错误代码:1146 表' pnu.o1'不存在
我应该如何加入子查询?
答案 0 :(得分:0)
您的数据库中不存在o1
之类的内容。您已将其创建为alias
,但无法使用此alias
。
您必须再次编写此子查询并创建它的新别名:
SELECT * FROM
(SELECT * FROM orders WHERE id > 2) AS o1
JOIN
(SELECT * FROM orders WHERE id > 2) AS o2
ON o1.id = o2.id;
或者临时表可能是另一种选择。