+ -
当前位置:首页 → 问答吧 → 求SQL语句

求SQL语句

时间:2011-11-29

来源:互联网

表1 表2
审批表 人员表

申请人ID 人员ID
第一步骤审批人ID 人员姓名
第二步骤审批人ID
审批表编号


求一条SQL语句,用来显示审批表的信息,信息中显示人员姓名,比如

审批表  
——————————————————————————————————————————
申请人ID.....第一步骤审批人ID.....第二步骤审批人ID.....审批表编号
..1..........2............3...........S01

人员表
——————————————————————————————————————————
人员ID.....人员姓名
..1......张三
..2......李四
..3......王五

欲取得的数据为

审批表编号 申请人 第一步骤审批人 第二步骤审批人
.S01......张三......李四..........王五...
.S02...
.S03...


求该条SQL语句
用子查询会不会很慢呀

作者: pcuser   发布时间: 2011-11-29

SQL code
select 
b.人员姓名 as 申请人
,b.人员姓名 as 第一步骤审批人
,b.人员姓名 as 第二步骤审批人
,审批表编号
from 审批表 as a
inner join 人员表 as b on a.申请人ID=b.ID
inner join 人员表 as c on a.第一步骤审批人ID=c.ID
inner join 人员表 as d on a.第二步骤审批人ID=d.ID

作者: roy_88   发布时间: 2011-11-29

SQL code

select 审批表编号,
       申请人=b.人员姓名,
       第一步骤审批人=c.人员姓名,
       第二步骤审批人=d.人员姓名
from 审批表 a
     inner join 人员表 b on a.申请人id=b.id
     inner join 人员表 c on a.第一步骤审批人Id=c.id
     inner join 人员表 d on a.第二步骤审批人id=d.id

作者: pengxuan   发布时间: 2011-11-29

--如果只有两步。则考虑如下:

SQL code
select m.审批表编号 , t1.人员姓名 申请人, t2.人员姓名 第一步骤审批人, t3.人员姓名 第二步骤审批人
from 审批表 m
left join 人员表 t1 on m.申请人ID = t1.人员ID
left join 人员表 t2 on m.第一步骤审批人ID = t2.人员ID
left join 人员表 t3 on m.第二步骤审批人ID = t3.人员ID

作者: dawugui   发布时间: 2011-11-29

热门下载

更多