示例如下,表A:订单号 客户
263663 A
273631 A
163263 B
173636 B想得到这样的结果:客户 订单号
A 263663;273631
B 163263;173636请问这个要怎么样才做得到呢,请各位高手赐教。
263663 A
273631 A
163263 B
173636 B想得到这样的结果:客户 订单号
A 263663;273631
B 163263;173636请问这个要怎么样才做得到呢,请各位高手赐教。
解决方案 »
- xp系统现在装了oracle和PL/SQL,如何装一个oracle服务器版本
- oracle无法找到正在调用的程序单元
- sql优化,查询时间太长
- 求教oracle9i的监听进程不能解析在连接描述符中给出的SERVICE_NAME问题
- 问一个SELECT查询的语句
- 在sqlplus中怎么捕捉 view or table does not exist异常呢
- 請教:怎樣在命令行下以sysdba登陸sqlplus 解決立即送分
- Oracle服务自动停止,有没有的救啊
- 急急急,,,DBMS_SQL_Execute的问题???
- 在登陆oracle成功后,oracle会自动分配进程号,请问我如何获得该进程号?
- Oracle建立远程链接问题,请大家帮忙!
- 请问哪里有关于Oracle用ODBC开发的资料下载?谢谢!急!
distinct orderNum
, first_value(a) over (orderNumition by orderNum order BY lev DESC) what
FROM
(SELECT
orderNum
, userNum
, LEVEL lev
, sys_connect_by_path(orderNum,';') a
FROM
(SELECT
temp5.orderNum||ROWNUM c
, (temp5.orderNum ||( ROWNUM - 1)) p
, orderNum
, userNum
FROM
temp5)
CONNECT BY
PRIOR c = p)
distinct orderNum
, ltrim(first_value(a) over (partition by orderNum order BY lev DESC) , ';') what
FROM
(SELECT
orderNum
, userNum
, LEVEL lev
, sys_connect_by_path(orderNum,';') a
FROM
(SELECT
temp5.orderNum||ROWNUM c
, (temp5.orderNum ||( ROWNUM - 1)) p
, orderNum
, userNum
FROM
temp5)
CONNECT BY
PRIOR c = p)
SELECT
distinct 客户
, ltrim(first_value(a) over (partition by 客户 order BY lev DESC) , ';') 订单号
FROM
(SELECT
客户
, 订单号
, LEVEL lev
, sys_connect_by_path(订单号,';') a
FROM
(SELECT
temp5.客户||ROWNUM c
, (temp5.客户 ||( ROWNUM - 1)) p
, 客户
, 订单号
FROM
temp5)
CONNECT BY
PRIOR c = p)
insert into invoice values (273631,'A');
insert into invoice values (163263,'B');
insert into invoice values (173636,'B');select customer,order_num from invoice;SELECT
distinct customer,
ltrim(first_value(a) over (partition by customer order BY lev DESC) , ';') order_num
FROM
(SELECT
customer,
order_num,
LEVEL lev,
sys_connect_by_path(order_num,';') a
FROM
(SELECT
invoice.customer||ROWNUM c,
(invoice.customer ||( ROWNUM - 1)) p,
customer,
order_num
FROM
invoice)
CONNECT BY
PRIOR c = p)