易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle多行记录合并/连接/聚合字符串的几种方法

什么是合并多行字符串(连接字符串)呢,例如:
SQL> desc test;
Name     Type          Nullable Default Comments
------- ------------ -------- ------- --------
COUNTRY VARCHAR2(20) Y                        
CITY     VARCHAR2(20) Y                        
SQL> select * from test;
COUNTRY               CITY
-------------------- --------------------
中国                  台北
中国                  香港
中国                  上海
日本                  东京
日本                  大阪
要求得到如下结果集:
-------     --------------------
中国        台北,香港,上海
日本        东京,大阪
   实际就是对字符实现一个聚合功能,我很奇怪为什么Oracle没有提供官方的聚合函数来实现它呢:)
   下面就对几种经常提及的解决方案进行分析(有一个评测标准最高★★★★★):
1.被集合字段范围小且固定型 灵活性★    性能★★★★ 难度 ★
   这种方法的原理在于你已经知道CITY字段的值有几种,且还不算太多,如果太多这个SQL就会相当的
长。。看例子:
SQL> select t.country,
   2   MAX(decode(t.city,'


相关文档:

Oracle的基本操作+Oracle字段类型(zz)

在Oracle关于时间属性的建表
Example:
create table courses(
cid varchar(20) not null primary key,
cname varchar(20) not null,
ctype integer,
ctime date DEFAULT SYSDATE,
cscore float not null
)
insert into courses values('ss01','java',0,TO_DATE('2009-8-28','yyyy-mm-dd'),94)
insert into course ......

Oracle字符串长度的问题

    今天碰到一个问题,通过一个SQL语句查询时,出如下问题:
       ORA-06502: PL/SQL: numeric or value error: character string buffer too small
       ORA-06512: at "WMSYS.WM_CONCAT_IMPL", line 30
 问题出现在通过WMSYS. ......

ORACLE跨数据库操作,DBLINK的使用


前几天帮一个朋友弄ORACLE跨数据库的操作,共享下具体的操作流程:
一、不同IP的数据库(DBLINK)
本地数据库ip 10.56.7.26
远程数据库ip 233.215.219.8
1.在10.56.7.26数据库安装文件中,找到$ORACLE_HOME/network/admin/tnsnames.ora文件,
末尾添加
MEDIADBLINK =
  (DESCRIPTION =
   &n ......

oracle 存储过程的基本语法 及注意事项

oracle 存储过程的基本语法 及注意事项
oracle 存储过程的基本语法
1.基本结构
CREATE OR REPLACE PROCEDURE 存储过程名字
(
    参数1 IN NUMBER,
    参数2 IN NUMBER
) IS
变量1 INTEGER :=0;
变量2 DATE;
BEGIN
END 存储过程名字
2.SELECT INTO STATEMENT
  将selec ......

Oracle多行记录合并/连接/聚合字符串的几种方法

什么是合并多行字符串(连接字符串)呢,例如:
SQL> desc test;
Name     Type          Nullable Default Comments
------- ------------ -------- ------- --------
COUNTRY VARCHAR2(20) Y       &nb ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号