table A:
employee_no,hr,leader1,leader2,leader3
101         201  g1       g2      g3
....
employee_no和hr都对应于下表中的employee_no,leader1,2,3与下表无关。
table B:
employee_no,display_name
101          jason
201          emma

要根据employee_no和leader或者hr的名称(如"hr","leader1"等),查询对应名称的详细内容,返回指定名称的内容。
比如可以查询 employee_no为101的hr的名字,也可以查询employee_no为101的leader1的内容,每次可以查询不同的内容

解决方案 »

  1.   

    --猜测一个:
    select a.* , b.* from a , b where a.employee_no = b.employee_no or a.hr = b.employee_no
      

  2.   

    多写几个sql语句就能查询不同的内容,现在的新人都很懒,总想一劳永逸。
      

  3.   


    declare @no varchar(100),@list varchar(100)
    declare @s varchar(1000)
    select  @no='101',@list='hr'
    set @s='select '+@list+'  from a , b where a.employee_no = b.employee_no or a.hr = b.employee_no and a.employee_no='+@no
    exec(@s)然后改成一个函数或者存储过程这样?
      

  4.   

    select * from a,b where a.employee_no=b.employee_no