米田 Blog ( SQL Server MEMO )

  PASSJブログ :: ホーム :: 連絡をする :: RSS  :: ATOM :: Login
  895 投稿数 :: 6 ストーリー :: 273 コメント :: 256 トラックバック

ニュース

過去の記事

カテゴリ

イメージギャラリ

Categories

FAQKB-SQL Server

gallery

Hands-On Labs Online

KBLIST

Links

Newsgroup microsoft.public

Search

WSS

x64

XBOX360

 米田です。

 文字列を各レコードから集計的に結合する方法
文字列版 SUM() 関数はありませんので、これまでできないと思い込んでいました。

SET NOCOUNT ON

DECLARE @Str0 NVARCHAR(3000)
SET @Str0 = ''

SELECT @Str0 = @Str0 + CategoryName
FROM Northwind.dbo.Categories
ORDER BY CategoryID

SELECT @Str0
 こんなコードで CategoryName を結合できます。
BeveragesCondimentsConfections
といった結果が得られます。
(逆順は ORDER BY CategoryID DESC )

 注意点としては、
http://support.microsoft.com/default.aspx?scid=kb;EN-US;287515
287515 - PRB: Execution Plan and Results of Aggregate Concatenation Queries Depend Upon Expression Location

 

投稿日時 : 2004年9月14日 22:02

コメントを追加

# re: 数値は SUM() 関数で集計、文字列を集計的に結合するには( Transact-SQL で aggregate concatenation ) 2004/09/16 3:40 河端善博
とりあえず、SQLCLR で実装してみようかと思っています。
※いつ ?

# 文字列を集計的に結合する(ユーザー定義関数経由で GROUP BY 対応) 2004/12/19 20:42 米田 Blog ( SQL Server MEMO )
文字列を集計的に結合する(ユーザー定義関数経由で GROUP BY 対応)

# re: 数値は SUM() 関数で集計、文字列を集計的に結合するには( Transact-SQL で aggregate concatenation ) 2005/03/01 16:12 コジマ
大変参考になりました。
是非試してみたいと思います。

# 文字列を集計的に結合するには 2007/09/15 2:00 にょろにょろ日記
数値は SUM() 関数で集計、文字列を集計的に結合するには( Transact...

コメント

タイトル:
名前:
Url:
コメント: