select a.empid
,b.empname
,c.posiname
,d.deptname
from empdept a
full join employee b on a.empid=b.empid
full join posi c on a.posiid=c.posiid
full join dept d on a.deptid=d.deptid
select a.empid,b.empname,d.posiname,c.deptname from empdept a left join employee b on a.empid=b.empid
left join dept c on a.deptid=c.deptid left join posi d on a.posiid=d.posiid
select A.empid,A.empname,D.posiname,C.deptname
from empdept A,employee B,dept C,posi D
where B.empid=A.empid and C.deptid=A.deptid and D.posiid=A.posiid
或者
select B.empid,A.empname,D.posiname,C.deptname
from empdept B inner join employee A on B.empid=A.empid
inner join dept C on deptid=B.deptid
inner join posi D on posiid=B.posiid
select empid,(select empname from employee where empid= A.empid),
(select posiname from posi where posiid=A.posiid),
(select deptname from dept where deptid=A.deptid)
from empdept A
select A.empid,A.empname,D.posiname,C.deptname
from employee A inner join empdept B on B.empid=A.empid
inner join dept C on deptid=B.deptid
inner join posi D on posiid=B.posiid
select a.empid,b.empname,d.posiname,c.deptname from empdept a join employee b on a.empid=b.empid
join dept c on a.deptid=c.deptid join posi d on a.posiid=d.posiid
-----------------------
select
empid,empname,posiname,deptname
from empdept a
join employee b on a.empid=b.empid
join dept c on a.deptid=c.deptid
join posi d on a.posiid=d.posiid
declare @posi table(posiid int,posiname varchar(10))
insert into @posi
select 1,'部长'
select a.empid
,b.empname
,c.posiname
,d.deptname
from @empdept a
full join @employee b on a.empid=b.empid
full join @posi c on a.posiid=c.posiid
full join @dept d on a.deptid=d.deptid