sql 多行轉成一行

2021-05-26 05:07:58 字數 607 閱讀 1860

例如表a

id     data

1      a

1      b

1      c

2      d

2      f

轉換成表b

1     a+b+c

2     d+e

smerg是自定義函式

建立乙個函式smerg:

create function smerg(@id int)

returns varchar(8000)

asbegin

declare @str varchar(8000)

set @str=''

select @str=@str+','+name from 表a where id=@id

set @str=right(@str,len(@str)-1)

return(@str)

endgo

--呼叫自定義函式得到結果

select distinct id,smerg(id) as name into 表b from 表a

select distinct id,dbo.smerg(id) as name into 表b from 表a

把多行轉成一行 用空格分開

select t1.id as 銷售合同標識,t1.billno as 單據號,t1.orderno as 合同編號,select distinct salesorderno from salescompactorder where parentid t1.id for xml path 銷售訂單號...

mysql多行合併一行,一行拆分多行

資料 建表語句 drop table if exists 品牌 create table 品牌 id int 0 not null,品牌 varchar 255 character set utf8 collate utf8 general ci null default null engine i...

SQL 語句一行拆成多行及多行合併成一行的方法

一 sql 語句對一行 單元格 資料拆分成多行 有時候我們也許對一行資料拆分成多行的操作 例如 col1 col2 1 a,b,c 2 d,e 3 f 拆分成 col1 col2 1 a1 b 1 c 2 d 2 e 3 f 下面給出幾個經常用到的方法 1 sql2000用輔助表 ifobject ...