楼主: MMMonroe
702 0

[学习笔记] 【学习笔记】-- 1.查询基本工资高于smith的员工 SELECT * FROM emp ... [推广有奖]

  • 0关注
  • 0粉丝

小学生

42%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
2.4000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
40 点
帖子
6
精华
0
在线时间
1 小时
注册时间
2019-8-1
最后登录
2023-8-18

楼主
MMMonroe 发表于 2019-9-4 21:30:39 来自手机 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
-- 1.查询基本工资高于smith的员工
SELECT
    *
FROM
    emp
WHERE
    sal > (SELECT
            sal
        FROM
            emp
        WHERE
            ename = \'smith\');

select * from emp;
-- 2.查询clerk的姓名及其所属部门名称和部门人数
SELECT
    e.ename, d.dname, job, COUNT(e.empno)
FROM
    emp AS e
        LEFT JOIN
    dept AS d ON d.deptno = e.deptno
WHERE
    e.empno IN (SELECT
            empno
        FROM
            emp
        WHERE
            job = \'clerk\')
GROUP BY d.deptno;

-- 3.查询各部门最高工资的员工:empno,ename,sal,deptno
SELECT
    *
FROM
    emp AS e
        LEFT JOIN
    dept AS d ON d.deptno = e.deptno
WHERE
    e.sal IN (SELECT
            MAX(sal)
        FROM
            emp AS e
                LEFT JOIN
            dept AS d ON d.deptno = e.deptno
        GROUP BY e.deptno)
;
select * from emp as e left join dept as d on d.deptno=e.deptno;
-- 4.工资高于同职位的平均工资的员工信息

SELECT
    *
FROM
    emp AS e1
        LEFT JOIN
    (SELECT
        AVG(e2.sal) AS avgsal, job
    FROM
        emp AS e2
    GROUP BY job) AS t ON e1.job = t.job
WHERE
    e1.sal > t.avgsal;
-- 5.查询各部门平均工资等级:deptno,平均工资,grade,dname

SELECT
    d.deptno,平均工资,grade,dname
FROM
    (SELECT
        AVG(sal) AS 平均工资, deptno
    FROM
        emp
    GROUP BY deptno) t
        LEFT JOIN
    salgrade AS s ON t.平均工资 BETWEEN s.losal AND s.hisal
    left join dept as d on d.deptno=t.deptno;


-- 6.查询平均工资等级最高的部门名称
SELECT
   d.deptno, d.dname
FROM
    (SELECT
    deptno,max(grade)
FROM
    (SELECT
        AVG(sal) AS 平均工资, deptno
    FROM
        emp
    GROUP BY deptno) t
        LEFT JOIN
    salgrade AS s ON t.平均工资 BETWEEN s.losal AND s.hisal
    ) AS b
left join dept as d on d.deptno=b.deptno;

-- 7.查询工资等级最低的员工的所属部门
SELECT
    d.dname, e.ename, s.grade
FROM
    emp AS e
        LEFT JOIN
    dept AS d ON e.deptno = d.deptno
        LEFT JOIN
    salgrade AS s ON sal BETWEEN s.losal AND s.hisal
WHERE
    s.grade IN (SELECT
            MIN(grade)
        FROM
            salgrade);
-- 8.查询基本工资比普通员工最高工资还要高的管理者
SELECT
    *
FROM
    emp
WHERE
    sal > (SELECT
            MAX(sal)
        FROM
            emp
        WHERE
            empno NOT IN (SELECT DISTINCT
                    mgr
                FROM
                    emp
                WHERE
                    mgr IS NOT NULL))
        AND empno IN (SELECT
            empno
        FROM
            emp
        WHERE
            empno IN (SELECT DISTINCT
                    mgr
                FROM
                    emp
                WHERE
                    mgr IS NOT NULL));


-- 9.查询基本工资高于chicago地区所有员工的员工姓名及其所在地区
SELECT
    ename, loc
FROM
    emp
        LEFT JOIN
    dept ON emp.deptno = dept.deptno
WHERE
    sal > ALL (SELECT
            sal
        FROM
            emp
                LEFT JOIN
            dept ON emp.deptno = dept.deptno
        WHERE
            loc = \'chicago\');


-- 10.查询不同职位的最低工资及从事该工作的员工姓名
SELECT
    *
FROM
    emp
WHERE
    (job , sal) IN (SELECT
            job, MIN(sal)
        FROM
            emp
        GROUP BY job);
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Select Elect Smith From 学习笔记

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2025-12-29 10:56