name number string
张三 100 我的名字叫
张三 50 张三
李四 200 我的名字叫
李四 90 李四
李四 10 大家好
王五 300 我的名字叫
王五 100 王五
输出样式
name number string
张三 150 我的名字叫张三
李四 300 我的名字叫李四大家好
王五 400 我的名字叫王五
求达人、高手帮忙看看oracle能不能以这样的形式输出
张三 100 我的名字叫
张三 50 张三
李四 200 我的名字叫
李四 90 李四
李四 10 大家好
王五 300 我的名字叫
王五 100 王五
输出样式
name number string
张三 150 我的名字叫张三
李四 300 我的名字叫李四大家好
王五 400 我的名字叫王五
求达人、高手帮忙看看oracle能不能以这样的形式输出
楼主把逗号replace掉就行了
SELECT NAME,SUM(NUMB) NUM,replace(wm_concat(STRING),',') string
FROM TEST
GROUP BY NAME
ORDER BY 2
(
NAME VARCHAR2(20),
NUM NUMBER(4),
STRING VARCHAR2(40)
);INSERT INTO T34 VALUES('张三', 100, '我的名字叫');
INSERT INTO T34 VALUES('张三', 50, '张三');
INSERT INTO T34 VALUES('李四', 200, '我的名字叫');
INSERT INTO T34 VALUES('李四', 90, '李四');
INSERT INTO T34 VALUES('李四', 10, '大家好');
INSERT INTO T34 VALUES('王五', 300, '我的名字叫');
INSERT INTO T34 VALUES('王五', 100, '王五');
测试结果:
select '张三' name, 100 num, '我的名字叫' info from dual union all
select '张三' name, 50 num, '张三' info from dual union all
select '李四' name, 200 num, '我的名字叫' info from dual union all
select '李四' name, 90 num, '李四' info from dual union all
select '李四' name, 10 num, '大家好' info from dual union all
select '王五' name, 300 num, '我的名字叫' info from dual union all
select '王五' name, 100 num, '王五' info from dual )
select name,replace(wm_concat(info),',','') , sum(num) from t group by name
所以考虑楼主的连接顺序是什么才是重点,配合分析函数一起使用,就OK了!