论坛首页 招聘求职论坛

一道有趣的sql题

浏览 24657 次
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-09-29  
Oracle 的话一个函数就搞定了 wm_concat 很鸡蛋的
0 请登录后投票
   发表时间:2010-09-29  
不会,不过如果结果真如上面写的,就是一个函数的话,那这题就看不出来有趣了。
0 请登录后投票
   发表时间: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
0 请登录后投票
   发表时间:2010-09-29   最后修改:2010-09-29
0 请登录后投票
   发表时间:2010-09-29  
也可以转成oracle的层次查询结构,用sys_connect_by_path函数实现,不过较麻烦
0 请登录后投票
   发表时间:2010-09-29  
select field1,wm_concat(field2)  all from table group by field1


oracle~~~~表示毫無鴨梨..
0 请登录后投票
   发表时间:2010-09-29  
这个是oracle在10,or 11才有的,
在9的时候,我是写自定义聚合函数来处理的
coloforlia 写道
select field1,wm_concat(field2)  all from table group by field1


oracle~~~~表示毫無鴨梨..

0 请登录后投票
   发表时间:2010-09-29  
select field1,group_concat(field2) as all from table group by field1
哥们我怎么在mysql数据库上执行不了这个sql语句啊。报group_concat()的这个括号是红的。不知道什么情况?mysql用的不熟悉。能讲下吗
0 请登录后投票
   发表时间:2010-09-29  
ok了。粗心了。。少写了两个''。。嘿嘿。。
0 请登录后投票
   发表时间:2010-09-30   最后修改:2010-09-30
yangguo 写道
appleandwh1234 写道
不知道这样可以不可以,

select 'A','1,2,3' from dual

哈哈哈


  未来之星



有没适合DB2的 sql,上面这位牛哥的除外,呵呵~~
0 请登录后投票
论坛首页 招聘求职版

跳转论坛:
Global site tag (gtag.js) - Google Analytics