Q2:给定以下两个表: 
部门ID 部门名称 
1 部门1 
2 部门2 
3 部门3 
4 部门4 人员ID 人员姓名 部门ID 
1 姓名1 1 
2 姓名2 1 
3 姓名3 2 
4 姓名4 3 
5 姓名5 5 (1)用一条SQL语句显示所有人员的姓名及所在部门,没有部门的用“未标志”代替。 
请问怎么做啊

解决方案 »

  1.   

    select B.人员ID, B.人员姓名, 部门名称=isnull(A.部门名称, '未标志') from B
    left join A on B.部门ID=A.部门ID
      

  2.   

    select b.姓名,isnull(a.部门,'未标志')
    from 表1 a,表2 b
    where a.部门ID=b.部门ID
      

  3.   


    create table A(部门ID int, 部门名称 varchar(10))
    insert A select 1, '部门1' 
    union all select 2, '部门2' 
    union all select 3, '部门3' 
    union all select 4, '部门4' create table B(人员ID int, 人员姓名 varchar(10), 部门ID int)
    insert B select 1, '姓名1', 1 
    union all select 2, '姓名2', 1 
    union all select 3, '姓名3', 2 
    union all select 4, '姓名4', 3 
    union all select 5, '姓名5', 5 select B.人员ID, B.人员姓名, 部门名称=isnull(A.部门名称, '未标志') from B
    left join A on B.部门ID=A.部门ID--result
    人员ID        人员姓名       部门名称       
    ----------- ---------- ---------- 
    1           姓名1        部门1
    2           姓名2        部门1
    3           姓名3        部门2
    4           姓名4        部门3
    5           姓名5        未标志(5 row(s) affected)