怎么把同一个表里的相同字符列的字符合并成 一个字符? 我是这么建视图的select cyear,cmonth,dwbh sum(sl) as sl from table group by cyear,cmonth,dwbh但字符的我不知道怎么合并,大家多帮忙啊! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select cyear,cmonth,dwbh sum(sl) as sl,concat(bz,','||value) from table group by cyear,cmonth,dwbh,concat(bz,','||value)--concat(y1,y2)连接字符函数; xjqqxjqq(JAI),concat只是连接两个字符的函数啊,和||的功能一样啊!但它并不能把多行里同一个字符字段的字符连接起来啊! 用sum 、sys_connect_by_pathbtw:你的问题难度与你给的分数相差太多了。 waterfirer(水清),你好,可以说的详细点吗?我的oracle 是8i,分不够再加 Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.C:\Documents and Settings\chanet>sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on 星期六 10月 22 16:54:16 2005Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> conn chanet/chanet@oradb已连接。SQL> CREATE TABLE tab_zzclhcbmail( 2 cyear VARCHAR2(5), 3 cmonth VARCHAR2(2), 4 dwbh VARCHAR2(4), 5 sl VARCHAR2(3), 6 bz VARCHAR2(20));表已创建。SQL> INSERT INTO tab_zzclhcbmail(cyear, cmonth, dwbh, sl, bz) 2 VALUES('2005','10','1001','100','大家好');已创建 1 行。SQL> INSERT INTO tab_zzclhcbmail(cyear, cmonth, dwbh, sl, bz) 2 VALUES('2005','10','1001','50','同志们好');已创建 1 行。SQL> COMMIT;提交完成。SQL> SELECT * FROM tab_zzclhcbmail;CYEAR CM DWBH SL BZ----- -- ---- --- --------------------2005 10 1001 100 大家好2005 10 1001 50 同志们好SQL> CREATE OR REPLACE FUNCTION get_SumBz(pYear VARCHAR2,pMonth VARCHAR2,pDwbh VARCHAR2) 2 RETURN VARCHAR2 IS 3 v_Item VARCHAR2(200); 4 BEGIN 5 FOR rc IN (SELECT bz FROM tab_zzclhcbmail WHERE cyear=pYear AND cmonth=pMonth AND dwbh=pDwbh) 6 LOOP 7 v_Item := v_Item||rc.bz; 8 END LOOP; 9 v_Item:=rTrim(v_Item,1); 10 RETURN v_Item; 11 END; 12 /函数已创建。SQL> SELECT DISTINCT cyear, cmonth, dwbh,get_sumBz(cyear, cmonth, dwbh) bz 2 FROM tab_zzclhcbmail;CYEAR CM DWBH BZ----- -- ---- -----------------------------------------2005 10 1001 大家好同志们好SQL> group by 问题,在9i 和10i 结果不一样 求一条SQL语句 插入身份证号的问题(100分) 请问下兄弟们复杂的在线时长的计算问题 Oracle 读取 xml视图 请大家帮忙看下这两个语句怎么连接起来 哪儿有oracle的中文函数和语法帮助手册?(GG JJ DD MM发一份给我) ???谁了解 《 Oracle 9i For Solaris 》 的安装过程,或有安装经验,介绍一下吧 ??? 一个小问题 千亿级大数据如何存储的问题? oracle插入数据问题 insert into m_yfjl (dahpsj) values (#2005-10-30 10:00:00#) 出错
(C) 版权所有 1985-2001 Microsoft Corp.C:\Documents and Settings\chanet>sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on 星期六 10月 22 16:54:16 2005Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> conn chanet/chanet@oradb
已连接。
SQL> CREATE TABLE tab_zzclhcbmail(
2 cyear VARCHAR2(5),
3 cmonth VARCHAR2(2),
4 dwbh VARCHAR2(4),
5 sl VARCHAR2(3),
6 bz VARCHAR2(20));表已创建。SQL> INSERT INTO tab_zzclhcbmail(cyear, cmonth, dwbh, sl, bz)
2 VALUES('2005','10','1001','100','大家好');已创建 1 行。SQL> INSERT INTO tab_zzclhcbmail(cyear, cmonth, dwbh, sl, bz)
2 VALUES('2005','10','1001','50','同志们好');已创建 1 行。SQL> COMMIT;提交完成。SQL> SELECT * FROM tab_zzclhcbmail;CYEAR CM DWBH SL BZ
----- -- ---- --- --------------------
2005 10 1001 100 大家好
2005 10 1001 50 同志们好SQL> CREATE OR REPLACE FUNCTION get_SumBz(pYear VARCHAR2,pMonth VARCHAR2,pDwbh VARCHAR2)
2 RETURN VARCHAR2 IS
3 v_Item VARCHAR2(200);
4 BEGIN
5 FOR rc IN (SELECT bz FROM tab_zzclhcbmail WHERE cyear=pYear AND cmonth=pMonth AND dwbh=pDwbh)
6 LOOP
7 v_Item := v_Item||rc.bz;
8 END LOOP;
9 v_Item:=rTrim(v_Item,1);
10 RETURN v_Item;
11 END;
12 /函数已创建。SQL> SELECT DISTINCT cyear, cmonth, dwbh,get_sumBz(cyear, cmonth, dwbh) bz
2 FROM tab_zzclhcbmail;CYEAR CM DWBH BZ
----- -- ---- -----------------------------------------
2005 10 1001 大家好同志们好SQL>