您的位置:首页 > 数据库

一个sql语句(left outer join)

2005-07-04 15:35 393 查看
我有一个权限表XT_QXMX:(权限序号,权限名称)
QXXH QXMC
1 发文填写
2 发文审批
3 收文填写
4 收文审批
权限-人员对应表XT_QXRY,如果某人有某个权限,则在此表有条记录
(序号,权限序号,用户名称)
XH QXXH YHMC
1 2 张三
2 3 张三
(张三有两个权限,发文审批和收文填写)
我想产生一个这样的查询:列出张三有哪些权限,同时列出所有的权限.查询结果如下:
QXXH QXMC 是否有此权限
1 发文填写 false
2 发文审批 true
3 收文填写 true
4 收文审批 false

初步实现
select q.qxxh,q.qxmc,q.yhmc from
(select t.qxxh,t.qxmc,r.yhmc from xt_qxmx as t left outer join (select * from xt_qxry where yhmc='张三') as r on t.qxxh=r.qxxh) as q
不过显示出来是这样的:
QXXH QXMC 是否有此权限
1 发文填写 null
2 发文审批 张三
3 收文填写 张三
4 收文审批 null
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: