如:数据
id pid name
1 0 A
2 0 B
3 1 A1
4 1 A2
5 2 B1
6 3 A11要得到结果:
A: A2、A11
B: B1
A1: A11
A2: A2
B1: B1
A11: A11
id pid name
1 0 A
2 0 B
3 1 A1
4 1 A2
5 2 B1
6 3 A11要得到结果:
A: A2、A11
B: B1
A1: A11
A2: A2
B1: B1
A11: A11
解决方案 »
- pl/sql如何调用带有游标的存储过程(sql窗口的调用)
- SQL 错误: ORA-04098: 触发器 'PMG001.OBJECTADMIN_SEQ_TRIGGER' 无效且未通过重新验证
- sqlplus能登陆,但是使用pl/sql developer却不能
- Oracle 10g 乱码问题,ORA-12560: TNS
- 如何设定晚上23点定时读取本地d:\download\dingdan\dingdan_2009-07-09.txt?
- 求:oracle 9.0.1.1.0的xdk for java 的原理。
- 表或属性无法在SQL*Plus中显示
- 请问Oracle事务中回滚前被如何处置?
- 请问oci连接数据库后,如何得到 OCIExtProcContext
- 问个ORACLE客户端的问题
- 帮忙看看为什么两列的数据不一样的,select e.ename,e2.ename from emp e join emp e2 on
- Oracle中怎么批量调整显示结果的列宽,不要column ** format a12;这样的答复~
Connected as test
SQL> select * from t;
ID PID NAME
---------- ---------- ----
1 0 A
2 0 B
3 1 A1
4 1 A2
5 2 B1
6 3 A11
6 rows selected
SQL> --下面语句只支持10g及以上版本
SQL>
SQL> SELECT t.name,
2 (SELECT wm_concat(a.name)
3 FROM t a
4 WHERE connect_by_isleaf = 1
5 START WITH a.id = t.id
6 CONNECT BY PRIOR a.id = a.pid) leaf
7 FROM t;
NAME LEAF
---- ----------
A A11,A2
B B1
A1 A11
A2 A2
B1 B1
A11 A11
6 rows selected
SQL>