Forums Neueste Beiträge
 

Benutzerdefinierte Aggregat-Funktion

21/03/2008 - 01:40 von Alexander Mueller | Report spam
Hallo

in MS-SQL Server 2005 gibt es ja keine Pseudo-Aggregat Funktion
für String-Concatenation, (oder doch?)

Man kann ja mit .NET eigene Aggregat Funktion definieren.
Weiß jmd wie das von der Performance her ist?
Ist das besser als eine Stored Proc mit Cursor?
Oder gibt's noch bessere Lösungen?

Ich bràuchte hàufig in einem Group By
Inhalte von VARCHAR-Feldern als Liste zurückgeliefert
da wàr so ein STRING_CONCAT sehr gut, hat damit jmd
Erfahrungen?

MfG,
Alex
 

Lesen sie die antworten

#1 Willfried Faerber
21/03/2008 - 08:20 | Warnen spam
Hallo Alex,
wenn Du einen größere Anzahlzahl von Strings verketten mußt, dann ist sicher
eine .Net Funktion einem Cursor in der Geschwindigkeit überlegen.
Allerdings gibt es auch eine andere Möglichkeit, die auch sehr gute
Performance hat:
Schau Dir mal das Beispiel an:

USE AdventureWorksDW;
SELECT
(
SELECT FirstName + ' ' + LastName + '; ' as [text()]
FROM dbo.DimEmployee
FOR XML PATH('')
) AS CSVListe

Vielleicht hilft das wieter




Willfried Fàrber

MVP SQL Server
https://mvp.support.microsoft.com/p...ed.Faerber

Asamstrasse 6
81541 München

http://www.wfaerber.de
http://www.sqlis.de



"Alexander Mueller" schrieb im Newsbeitrag
news:47e303f1$0$4846$
Hallo

in MS-SQL Server 2005 gibt es ja keine Pseudo-Aggregat Funktion
für String-Concatenation, (oder doch?)

Man kann ja mit .NET eigene Aggregat Funktion definieren.
Weiß jmd wie das von der Performance her ist?
Ist das besser als eine Stored Proc mit Cursor?
Oder gibt's noch bessere Lösungen?

Ich bràuchte hàufig in einem Group By
Inhalte von VARCHAR-Feldern als Liste zurückgeliefert
da wàr so ein STRING_CONCAT sehr gut, hat damit jmd
Erfahrungen?

MfG,
Alex

Ähnliche fragen