SQL双表查询,做下B C两题

img

课程设计就老实点吧


with a as(
select top 1 * from emp order by sal desc)

select b.dpmp,b.dname from a inner join demp b on a.dpmp = b.dpmp



select emp.no,emp.name from emp where dpmp in (select dpmp from emp where name = '张飞')

直接联表联查,左联一下


B:
1.获得工资的最大值
SELECT MAX(sal)
FROM emp1;
2.通过工资最大值获得对应的demp
SELECT demp
FROM emp1
WHERE sal=(
SELECT MAX(sal)
FROM emp1);
3.通过demp获得对应的部门
SELECT dname
FROM demp1
WHERE demp=(
SELECT demp
FROM emp1
WHERE sal=(
SELECT MAX(sal)
FROM emp1));

C.
1.首先写出张飞所在部门
SELECT demp
FROM emp1
WHERE name='张飞';

2.找出和张飞一个部门的人
SELECT name
FROM emp1
where demp=(
SELECT demp
FROM emp1
WHERE name='张飞');

我也是刚开始学,其实思路清晰之后联系多了就会了
所有的事情都是熟能生巧,希望可以一起进步。