91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SQL怎么按某字段合并字符串

發布時間:2022-03-21 17:01:50 來源:億速云 閱讀:725 作者:iii 欄目:數據庫

本文小編為大家詳細介紹“SQL怎么按某字段合并字符串”,內容詳細,步驟清晰,細節處理妥當,希望這篇“SQL怎么按某字段合并字符串”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

標題:按某字段合并字符串之一(簡單合并)

描述:將如下形式的數據按id字段合并value字段。id value----- ------1 aa1 bb2 aaa2 bbb2 ccc需要得到結果:id value------ -----------1 aa,bb2 aaa,bbb,ccc即:group by id, 求 value 的和(字符串相加)

1、sql2000中只能用自定義的函數解決

create table tb(id int, value varchar(10))insert into tb values(1, 'aa')insert into tb values(1, 'bb')insert into tb values(2, 'aaa')insert into tb values(2, 'bbb')insert into tb values(2,'ccc')gocreate function dbo.f_str(@id int) returns varchar(100)asbegin declare @str varchar(1000) set @str='' select @str=@str+''+cast(value as varchar) from tb where id = @id set @str=right(@str , len(@str) - 1) return @strendgo--調用函數select id , value = dbo.f_str(id) from tb group by iddrop function dbo.f_strdrop table tb

2、sql2005中的方法

create table tb(id int, value varchar(10))insert into tb values(1, 'aa')insert into tb values(1, 'bb')insert into tb values(2, 'aaa')insert into tb values(2, 'bbb')insert into tb values(2, 'ccc')goselect id, [value] = stuff((select ',' + [value] from tb t where id = tb.id for xml path('')) , 1 , 1 , '')from tb group by iddrop table tb

3、使用游標合并數據

create table tb(id int, value varchar(10))insert into tb values(1, 'aa')insert into tb values(1, 'bb')insert into tb values(2, 'aaa')insert into tb values(2, 'bbb')insert into tb values(2, 'ccc')godeclare @t table(id int,value varchar(100))--定義結果集表變量--定義游標并進行合并處理declare my_cursor cursor local forselect id , value from tbdeclare @id_old int , @id int , @value varchar(10) , @s varchar(100)open my_cursor fetch my_cursor into @id , @valueselect @id_old = @id , @s=''while @@FETCH_STATUS = 0begin if @id = @id_old  select @s = @s + ',' + cast(@value as varchar) else  begin  insert @t values(@id_old , stuff(@s,1,1,''))   select @s = ',' + cast(@value as varchar) , @id_old = @id  end fetch my_cursor into @id , @value END  insert @t values(@id_old , stuff(@s,1,1,'')) close my_cursor deallocate my_cursor select * from @tdrop table tb

讀到這里,這篇“SQL怎么按某字段合并字符串”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

sql
AI

石首市| 密山市| 剑河县| 巴彦淖尔市| 临沂市| 沂源县| 民权县| 苏尼特左旗| 陕西省| 阿城市| 邵东县| 青铜峡市| 喀喇| 金山区| 宾阳县| 井研县| 太谷县| 黔江区| 齐齐哈尔市| 绥芬河市| 龙胜| 西安市| 广州市| 琼中| 彝良县| 体育| 宜兰县| 红桥区| 宝山区| 图木舒克市| 曲沃县| 沽源县| 林甸县| 沈阳市| 沧州市| 新龙县| 平和县| 武威市| 治县。| 多伦县| 江北区|