标题:关键字执行顺序之select-having疑问
只看楼主
tan_qinliang
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2023-1-14
 问题点数:0 回复次数:0 
关键字执行顺序之select-having疑问
网上查询出来的关键字执行顺序都是FROM、ON 、JOIN、WHERE、GROUP BY、AGG_FUNC、WITH、HAVING、SELECT
HAVING 再SELECT前
        SELECT AVG(salary)avg_sal,d.*
        FROM employees e
        JOIN departments d
        ON e.department_id=d.department_id
        GROUP BY department_id
        HAVING avg_sal=(
        
            SELECT MIN(avg_sal.avg)
            FROM (
            
                SELECT AVG(salary) avg
                FROM employees
                GROUP BY department_id
               
                ) avg_sal
        
            );
这段SQL  并没有报错  HAVING后的avg_sal是SELECT中取得别名。
按网上说的顺序,这里avg_sal应该找不到。
有没有大佬讲解讲解。
搜索更多相关主题的帖子: GROUP SELECT FROM 执行顺序 关键字 
2023-01-14 16:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-511111-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.058869 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved