这样的查询语句如何写

lijiashu1981 2007-06-28 04:21:27
现有两个表
表A
上几部门代号 科室代码
1 4
1 5
2 6
2 7
3 8
表B
代号 名称
1 部门1
2 部门2
3 部门3
4 科室1
5 科室2
6 科室1
7 科室3
8 科室1

要查询出结果
代号 名称
1 部门1
4 部门1科室1
5 部门1科室2
2 部门2
6 部门2科室1
7 部门2科室2
3 部门3
8 部门3科室1

这样的查询如何写?
...全文
308 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
DragonBill 2007-07-03
  • 打赏
  • 举报
回复
不如这样啦:


SELECT ID,DECODE(ID, CODE, '', FIRST_VALUE(NAME) OVER (PARTITION BY CODE ORDER BY CODE DESC)) || NAME
FROM (
SELECT B.*, NVL(A.ID, B.ID) AS CODE
FROM B
LEFT JOIN A ON BB.ID = A.CODE
)
joeandlily 2007-07-02
  • 打赏
  • 举报
回复
select
name
form
(select distinct a.code1 code,b.name name from a,b where a.code1=b.code) c
union
select
c.name || d.name
from
(select distinct a.code1 code,b.name name from a,b where a.code1=b.code) c,
(select distinct a.code2 code,b.name name from a,b where a.code2=b.code) d
where
a.code1=c.code
and a.code2=d.code
思路:分别找出部门号+部门名;科室号+科室名。组建两个子标,然后,分成只有[部门名],和[部门名科室名]两个子集。
lijiashu1981 2007-07-01
  • 打赏
  • 举报
回复
yangjiaxin_1(自己加星星)

好象不行吧
yangjiaxin_1 2007-06-29
  • 打赏
  • 举报
回复
我把你的第一个表叫 jxyang link(id ,did) 第二个表 jxyangdept(dept_id,deptname)
yangjiaxin_1 2007-06-29
  • 打赏
  • 举报
回复
select a.dept_id,c.deptname||a.deptname deptname from jxyangdept a,jxyanglink b,jxyangdept c
where a.dept_id=b.did(+) and b.id=c.dept_id(+)
order by deptname
xiaoxiao1984 2007-06-28
  • 打赏
  • 举报
回复
SQL> select code, (select name from b where b.code=c.id) || (select name from b
where b.code=c.code) from
2 (select '' as id, code as code from b where instr(name, '部门') > 0
3 union all
4 select id, code from a
5 )c
6 connect by prior code = id start with id is null or id = ''
7 ;

C (SELECTNAM
- ----------
1 部门1
4 部门1科室1
5 部门1科室2
2 部门2
6 部门2科室1
7 部门2科室3
3 部门3
8 部门3科室1

已选择8行。

SQL>
ljxsea 2007-06-28
  • 打赏
  • 举报
回复
select concat(b.bmname,c.bmname) as deptname
from 表A a,
表B b,
表B c
where b.bmid=a.bmid
and a.ksid=c.bmid


这样只能把含下级部门的查询出来

代号 名称

4 部门1科室1
5 部门1科室2

6 部门2科室1
7 部门2科室2

8 部门3科室1

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧