當前位置:菜譜大全網 - 菜譜 - 請問在sql server中如何用sql語句組成無限菜單?

請問在sql server中如何用sql語句組成無限菜單?

妳說的是排序吧?我手頭正好有壹個例子。如果妳稍微改變它,改變“.”to'-'是妳想要的結果。

使用?tempdb?

如果?OBJECT_ID('TB ')?是嗎?不是嗎?空

下降?桌子?結核病(tuberculosis)

創造?桌子?結核病(tuberculosis)

(cBomList?NVARCHAR(200)?不是嗎?空)

插入?變成?結核病(tuberculosis)

選擇?'1'?工會?全部

選擇?'1.1'?工會?全部

選擇?'1.2'?工會?全部

選擇?'1.11.11'?工會?全部

選擇?'1.2.2'?工會?全部

選擇?'2.1'?工會?全部

選擇?'2.1.3'?工會?全部

選擇?'2.2'?工會?全部

選擇?'3.1'?工會?全部

選擇?'3.12'?工會?全部

選擇?'3.2'?

/*將排名轉換為固定位數*/

如果?OBJECT_ID('formatBom ')?是嗎?不是嗎?空

下降?功能?格式化Bom

去嗎?

創造?功能?【dbo】。[formatBom](@cBName?nvarchar(100))

退貨?varchar(100)

如同

開始

申報?@str?varchar(100),@i?int,@tempV?nvarchar(100),@ iBIndex?int?,@iEIndex?int -?,@bG?少量

設置?@ I index = 1

設置?@str= ' '

設置?@i=1

如果?len(@ CB name)& gt;0

開始

設置?@tempV=@cBName

什麽時候?(@ i & lt=len(@tempV))

開始

如果?子串(@tempV,@i,1)= ' '

開始

設置?@iEIndex=@i

設置?@ str = @ str+right(cast(substring(@ tempV,@ I index,@ iEIndex-@ I index)?作為?int)+100000,3)

設置?@ iBIndex?=?@我?+?1

結束

設置?@i=@i+1

結束

設置?@ str = @ str+right(cast(substring(@ tempV,@ iBIndex,Len(@tempV)?+?1?-?@iBIndex)?作為?int)+100000,3)

結束

返回(@str)

結束

選擇?*,dbo。【format BOM】(cbom list)?從哪裏?TB?訂單?被誰?dbo。[格式清單]