0

下面是我的表格脚本和记录。

create table prods
(prod_no varchar2(12));

insert into prods
values('MOBILE');

insert into prods
values('LAPTOP');

select prod_no from prods;给我

MOBILE
LAPTOP.

我怎样才能得到如下结果?

MOBILE LAPTOP. 我希望将两条记录放在一行中。

4

3 回答 3

2
create table prods
(prod_no varchar2(12));

insert into prods
values('MOBILE');

insert into prods
values('LAPTOP');

select 
   rtrim (xmlagg (xmlelement (e, prod_no || ' ')).extract ('//text()'), ' ') list
from 
prods;

LIST                                                                            
---------------------------------------------------------
MOBILE LAPTOP                                                                   
1 row selected.

SQLFIDDLE:链接

于 2012-06-19T16:57:29.143 回答
0

我认为您需要旋转表格。浏览以下网址

访问:http: //blogs.msdn.com/b/spike/archive/2009/03/03/pivot-tables-in-sql-server-a-simple-sample.aspx

于 2012-06-19T16:33:49.023 回答
0

试试这个:

--Transact-SQL
--In this case, store in the variable varchar values
declare @result varchar(max) = '';

select @result = @result + prod_no + ' ' from prods;

select @result;
于 2012-06-19T17:08:52.087 回答