锁定老帖子 主题:一道有趣的sql题
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-09-29
Oracle 的话一个函数就搞定了 wm_concat 很鸡蛋的
|
|
返回顶楼 | |
发表时间:2010-09-29
不会,不过如果结果真如上面写的,就是一个函数的话,那这题就看不出来有趣了。
|
|
返回顶楼 | |
发表时间:2010-09-29
create table tab1(a varchar2(16),b varchar2(16));
insert into tab1 values('a','1'); insert into tab1 values('a','2'); insert into tab1 values('a','3'); insert into tab1 values('b','4'); insert into tab1 values('b','5'); commit; SELECT a ,WMSYS.WM_CONCAT(b) FROM tab1 GROUP BY a; 1 a 1,2,3 2 b 4,5 |
|
返回顶楼 | |
发表时间:2010-09-29
最后修改:2010-09-29
|
|
返回顶楼 | |
发表时间:2010-09-29
也可以转成oracle的层次查询结构,用sys_connect_by_path函数实现,不过较麻烦
|
|
返回顶楼 | |
发表时间:2010-09-29
select field1,wm_concat(field2) all from table group by field1
oracle~~~~表示毫無鴨梨.. |
|
返回顶楼 | |
发表时间:2010-09-29
这个是oracle在10,or 11才有的,
在9的时候,我是写自定义聚合函数来处理的 coloforlia 写道 select field1,wm_concat(field2) all from table group by field1
oracle~~~~表示毫無鴨梨.. |
|
返回顶楼 | |
发表时间:2010-09-29
select field1,group_concat(field2) as all from table group by field1
哥们我怎么在mysql数据库上执行不了这个sql语句啊。报group_concat()的这个括号是红的。不知道什么情况?mysql用的不熟悉。能讲下吗 |
|
返回顶楼 | |
发表时间:2010-09-29
ok了。粗心了。。少写了两个''。。嘿嘿。。
|
|
返回顶楼 | |
发表时间:2010-09-30
最后修改:2010-09-30
yangguo 写道 appleandwh1234 写道 不知道这样可以不可以,
select 'A','1,2,3' from dual 哈哈哈 未来之星 有没适合DB2的 sql,上面这位牛哥的除外,呵呵~~ |
|
返回顶楼 | |