mysql练习第一部分
楼主最近一段时间刚学完数据库,下面的是针对数据库中的连表查询,子查询等综合使用,适合新手,后续还会更新第二部分。如果需要Navicat,或者sqlyog,等数据库管理工具,可以在下方留言,我会上传破解版资源,如下练习欢迎指正。
使用的资源数据在我发布的资源中 mysql练习用资源库
下面是基本查询中比较值得做的练习,都是楼主自己写的
1. 列出至少有一个员工的部门名。
select d.dname,d.deptno from dept d left join (select e.deptno,count() from emp e group by e.deptno having count() >= 1) new on d.deptno in (new.deptno);
2.列出月薪比“SMITH”多的所有员工。
select * from emp e where e.sal > (select e1.sal from emp e1 where e1.ename = ‘smith’);
3. 列出所有员工的姓名及其直接上级的姓名。
select e.ename 员工名,m.ename 上级名 from emp e left join emp m on e.mgr = m.empno;
4. 列出受雇日期早于其直接上级的所有员工的编号、姓名、部门名称。
select e.empno 编号,e.ename 姓名,d.dname 部门名,e.hiredate,m.ename,m.hiredate from emp e left join dept d on e.deptno = d.deptno left join emp m on e.mgr = m.empno where e.hiredate <