0
如何建立在SQL Server 表字段值的所有順序我也有類似的表這個如何建立一個表的字段值的所有連續在SQL Server
a b b c d f
我需要一個功能,該表具有類似的輸出
a ab abb abbc abbcd abbdcf
假設我有訂購這些項目的ID。
如何建立在SQL Server 表字段值的所有順序我也有類似的表這個如何建立一個表的字段值的所有連續在SQL Server
a b b c d f
我需要一個功能,該表具有類似的輸出
a ab abb abbc abbcd abbdcf
假設我有訂購這些項目的ID。
假設你有一個訂購的項目一個(無間隙,增大)ID:
with tree (id, all_items) as (
select id, cast(data as varchar(max)) as all_items
from foo
where id = 1
union all
select c.id, p.all_items + c.data
from foo c
join tree p on p.id = c.id - 1
)
select all_items
from tree
SQLFiddle例如:http://www.sqlfiddle.com/#!3/8840c/1
Declare @Temp Table
(
Id Int Identity(1,1),
Data Varchar(1)
)
Insert Into @Temp(Data) Values ('a')
Insert Into @Temp(Data) Values ('b')
Insert Into @Temp(Data) Values ('b')
Insert Into @Temp(Data) Values ('c')
Insert Into @Temp(Data) Values ('d')
Insert Into @Temp(Data) Values ('f')
Declare @i Int = 1, @j Int = 1,@Str Varchar(max) = '',@AllStr Varchar(max) = ''
While(@i <= (Select MAX(Id) From @Temp))
Begin
While(@j <= @i)
Begin
Set @Str += (Select Data From @Temp Where Id = @j)
Set @j += 1
End
Print @str
Set @j = 1
Set @i += 1
Set @Str = ''
End
記住。 SQL數據庫有存儲數據不格式化數據。 – hims056
@ hims056它是一個真正的問題我的表有超過1千萬像這樣的記錄 – jozi