日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

sql分組合并字段重復(fù)項sql for xml path

系統(tǒng) 1923 0

-------------------------(情景描述)

在我們處理數(shù)據(jù)時,可能會碰到這種情景:

Id ? ? ? ? ? ? ? ?Name

1????????????????? a,b

2????????????????? a

1????????????????? a,b,c

對于上面的表數(shù)據(jù)要求合并同類項Name,得到結(jié)果:

1????????????????? a,b,c

2????????????????? a

-------------------------(解決方案)

我們通過sql for xml path來合并Name,并寫一個標(biāo)量函數(shù)來去掉重復(fù)項:

1)? 創(chuàng)建標(biāo)量函數(shù):

CREATE FUNCTION F_getStr(@oriStr nvarchar(30))

returns nvarchar(30)

as

begin

? declare @str nvarchar(30),@temp nvarchar(30)

? set @str=''

? set @temp=''

? while charindex(',', @oriStr+',')>0

? begin

??? set @temp=left(@oriStr, charindex(',', @oriStr+',')-1)

??? if charindex(','+@temp+',', ','+@str+',')=0

????? set @str=@str+','+@temp

??? set @oriStr=stuff(@oriStr, 1, charindex(',', @oriStr+','), '')???

? end

? return stuff(@str, 1, 1, '')

end

go

2)? sql語句:

select T1.id,

dbo.F_getStr(

stuff((select ';'+Name from Test as TT1 where TT1.id=T1.id for xml path('')),1,1,'')

) as EndStr from Test as T1

group by T1.id

sql分組合并字段重復(fù)項sql for xml path


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 梨树县| 鸡东县| 福安市| 曲沃县| 武宣县| 珠海市| 南陵县| 杨浦区| 奎屯市| 冷水江市| 威海市| 辽阳县| 闽侯县| 璧山县| 日照市| 南川市| 襄汾县| 当雄县| 闽侯县| 竹山县| 怀来县| 沽源县| 肃宁县| 如东县| 汾阳市| 吴川市| 昌宁县| 贵阳市| 株洲市| 来宾市| 封开县| 福海县| 乐亭县| 咸阳市| 枞阳县| 邯郸县| 增城市| 马关县| 大埔区| 平谷区| 莱西市|