国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

SQLSqlserver中如何將一列數據,不重復的拼接成一個字符串

2024-07-21 02:49:35
字體:
來源:轉載
供稿:網友
SQLSqlserver中如何將一列數據,不重復的拼接成一個字符串

  把一列數據拼接成一個字符串比較簡單:

declare @test varchar(500)set @test='';select @test=@test+name+',' from personselect @test

  但是如果數據中有重復選項,想去掉重復的就比較繞彎了。

declare @test varchar(500)set @test='';select distinct @test=@test+name+',' from personselect @test

加distinct是不行的,我在sql server 2008 版本測試起碼是不行的,只顯示了第一行的數據。

繞彎一下:

declare @test varchar(500)set @test='';with cte as(select distinct name+',' as namefrom person)select @test=@test+name from cte select @test 

其實這個思路下,用臨時表,表變量什么的都可以,但是用CTE比較簡潔。看來公用表表達式(CTE)有時候挺有用的。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 隆安县| 内黄县| 渑池县| 南岸区| 民勤县| 四川省| 高州市| 策勒县| 新昌县| 崇阳县| 淅川县| 建平县| 嘉荫县| 沙河市| 徐水县| 田阳县| 西吉县| 嘉定区| 儋州市| 蓬溪县| 台前县| 西贡区| 台州市| 师宗县| 舒兰市| 禹州市| 瑞昌市| 巴南区| 盐边县| 岳阳县| 长泰县| 英吉沙县| 托克托县| 通化市| 额敏县| 临潭县| 胶州市| 皋兰县| 建昌县| 来凤县| 桐梓县|