题解 | 用with定义两个子句,简化sql语法结构

获取员工其当前的薪水比其manager当前薪水还高的相关信息

https://www.nowcoder.com/practice/f858d74a030e48da8e0f69e21be63bef

WITH  #with子句只能出现一次
    es AS (
        SELECT
            d.*,
            s.salary
        FROM
            dept_emp d
            LEFT JOIN salaries s ON d.emp_no = s.emp_no
    ),  #with下的两个子句用逗号连接
    ms AS (
        SELECT
            m.*,
            s.salary
        FROM
            dept_manager m
            JOIN salaries s ON m.emp_no = s.emp_no
    )  #with与select间不需要其他符号
SELECT
    es.emp_no,
    ms.emp_no AS manager_no,
    es.salary AS emp_salary,
    ms.salary AS manager_salary
FROM
    es
JOIN
    ms ON es.dept_no = ms.dept_no
WHERE
    es.salary > ms.salary;

全部评论

相关推荐

_mos_:要不是看评论区我都不知道你要找的是数分
点赞 评论 收藏
分享
轻絵梨花泪沾衣:南泵,大少爷驾到通通闪开
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务