有两张表
部门表
部门编号,部门名称
A1,郑州人员表
编号,所在部门,姓名
01,A1,宁卫东如果执行select * from person where no = '01'
只显示所在部门的编号。如果我想让它根据部门编号显示部门名称,应该怎么连接这两张表。SQL语句怎么写?

解决方案 »

  1.   

    Select a.*,b.部门名称 from 人员表 a join 部门表 b on a.所在部门=b.部门编号
      

  2.   

    select a.*,b.部门名称 from 人员表 a,部门表 b where a.所在部门=b.部门编号
      

  3.   

    inner join语句
    或Select a.*,b.部门名称 from 人员表 a ,部门表 b where a.所在部门=b.部门编号 
     
      

  4.   

    select 编号,部门名称,姓名 from 部门表 a join 人员表 b 
    on a.部门编号=b.编号
    where b.编号='01'
      

  5.   

    select 编号,部门名称, 姓名
    from person left join  部门表 on 所在部门=部门编号 
    where no = '01'
      

  6.   

    create table #Depth
    (
      部门编号 varchar(10),
      部门名称 varchar(20)
    )
    insert into #Depth select 'A1','郑州'create table #Employee
    (
      编号 char(5),
      所在部门 varchar(10),
      姓名 nvarchar(20)
    )
    insert into #Employee select '01','A1','宁卫东'select D.*,E.姓名 from #Depth D 
    join
    #Employee E
    on E.所在部门=D.部门编号 and E.编号='01'部门编号       部门名称                 姓名
    ---------- -------------------- --------------------
    A1         郑州                   宁卫东(1 行受影响)
      

  7.   


    select a.编号,b.部门名称,a.姓名
    from 人员表 a
    left join 部门表 b on (b.部门编号=a.所在部门)
      

  8.   

    Select a.编号,b.部门名称,a.姓名 from 人员表 a join 部门表 b on a.所在部门=b.部门编号
      

  9.   

    编号要固定,就在后面加个:and a.编号='01'