将结果集作为表来进行表连接发生错误

SELECT e.sal
FROM employ e JOIN
(SELECT AVG(sal) FROM employ) p
ON e.sal>p.sal;
把这个代码运行报错:> 1054 - Unknown column 'p.sal' in 'where clause'
网上说需要把表括号起来,但是没用求大老解答

你的临时表里面也没有sal列呀,你的列名叫AVG(sal)
你可以这样:
SELECT e.sal
FROM employ e JOIN
(SELECT AVG(sal) as sal FROM employ) p
ON e.sal>p.sal;

SELECT e.sal
FROM employ e JOIN
(SELECT AVG(sal) sal FROM employ) p
ON e.sal>p.sal;

如有帮助,望点击我回答右上角【采纳】按钮支持一下。

SELECT e.AVG(sal)
FROM employ e JOIN
(SELECT AVG(sal) FROM employ) p
ON e.sal>p.sal;