从来没搞过Oracle的人在线等一sql语句
我现在有一个进出表a和出口表b
a表字段如下:
apl_name (企业名称会大量重复)
hs_code(hs编码也会大量重复)
b表字段也是一样的
我现在有个需求就是
1,统计处出口表的每个企业出口过哪些hs_code
2,统计处进口表每个企业对中国出口过什么东西
最后结果如下:
海尔 01,02,03,04
就是说海尔出口过01和02和03和04这些编码并用逗号隔开以方便程序开发
这个肯定要用存储过程做我觉得
------解决方案--------------------SQL> select * from test;
ID TME
---- ----------
A 1
B 1
C 1
D 1
E 1
F 2
G 2
已选择7行。
SQL> select tme, substr(max(sys_connect_by_path(id, ', ')), 2) catstr
2 from (select id, tme, row_number() over(partition by tme order by 1) rn
3 from test)
4 start with rn = 1
5 connect by rn - 1 = prior rn and tme = prior tme
6 group by tme;
TME CATSTR
---------- --------------------
1 A,B,C,D,E
2 F,G
SQL>
------解决方案--------------------贊一個,學習中
------解决方案--------------------我觉得既然是方便程序开发,那么程序员很容易处理这个逻辑,至于LZ要找SQL语句还真不知道找到后又怎么去方便程序开发。能否具体点