Mysql 常用语句实战3

前置 sql 语句

用来创建表、插入数据

SET FOREIGN_KEY_CHECKS = 0;
DROP TABLE
IF
    EXISTS dept_;-- 部门表
EXISTS emp_;1;

SELECT  @@FOREIGN_KEY_CHECKSCREATE TABLE dept_ ( DEPTNO INT PRIMARY KEY, 部门编号
DNAME VARCHAR ( 14 ),1)"> 部门名称
LOC 13 )  部门地址
);
INSERT INTO dept_
VALUES
    ( 10,'ACCOUNTING',1)">NEW YORK' );
20,1)">RESEARCHDALLAS30,1)">SALESCHICAGO40,1)">OPERATIONSBOSTONTABLE emp_ (
emp_NO  员工编号
ENAME 10 ),1)"> 员工名称
JOB 9 ),1)"> 工作
MGR DOUBLE,1)"> 直属领导编号
HIREDATE DATE,1)"> 入职时间
SAL  工资
COMM  奖金
DEPTNO INT,1)"> 部门号
FOREIGN KEY ( DEPTNO ) REFERENCES dept_ ( DEPTNO ) 
);
 emp_
7369,1)">SMITHCLERK7902,1)">1980-12-17800,1)">NULL,1); font-weight: bold">207499,1)">ALLENSALESMAN7698,1)">1981-02-201600,1); font-weight: bold">300,1); font-weight: bold">307521,1)">WARD1981-02-221250,1); font-weight: bold">500,1); font-weight: bold">7566,1)">JOnesMANAGER7839,1)">1981-04-022975,1); font-weight: bold">7654,1)">MARTIN1981-09-281400,1)">BLAKE1981-05-012850,1); font-weight: bold">7782,1)">CLARK1981-06-092450,1); font-weight: bold">107788,1)">SCottANALYST1987-07-133000,1)">KINGPRESIDENT1981-11-175000,1); font-weight: bold">7844,1)">TURNER1981-09-081500,1); font-weight: bold">0,1); font-weight: bold">7876,1)">AdamS1100,1); font-weight: bold">7900,1)">JAMES1981-12-03950,1)">FORD7934,1)">MILLER1982-01-231300,1); font-weight: bold">10 );

 

问题列表

1、列出至少有三个员工的所有部门和部门信息。

2、列出受雇日期早于直接上级的所有员工的编号,姓名,部门名称

3、列出职位为“CLERK”的姓名和部门名称,部门人数:

 

答案列表

1.列出至少有三个员工的所有部门和部门信息。

select * from dept_ where DEPTNO in (select DEPTNO from emp_ group by DEPTNO having count(1) >= 3)

2.列出受雇日期早于直接上级的所有员工的编号,姓名,部门名称
select a.emp_NO,a.ENAME,(select DNAME from dept_ c where a.DEPTNO = c.DEPTNO) "部门名称" from emp_ a join emp_ b on a.MGR = b.emp_NO where a.HIREDATE < b.HIREDATE

.列出职位为“CLERK”的姓名和部门名称,部门人数:
select group_concat(a.ENAME),b.DNAME,count(1) from emp_ a join dept_ b on a.DEPTNO = b.DEPTNO  where a.JOB = CLERK" group by b.DEPTNO

 

相关文章

优化MySQL数据库发布系统存储的方法有:1.mysql库主从读写分...
使用mysql的方法:在“我的电脑”→右键→“管理”→“服务”...
在mysql中查看root用户权限的方法:1.命令行启动mysql服务;...
MySQL主从复制是用来备份一个与主数据库一样环境的从数据库,...
运行mysql的方法1.启动mysql服务,在“我的电脑”→右键→“...
开启mysql的方法1.可以通过快捷键win+r,输入cmd,打开窗口,...