MSSQL 2000 SP3 – Zusammenfassen von mehreren Zellen in eine

Javanoth

Grünschnabel
Hallo Leute, ich habe über die Stored Procedures in SQL ein kleines Programm geschrieben, das mir Werte aus einer Tabelle ausliest und diese zusammengefasst in eine andere Tabelle als zusätzliche Zeile einfügt.
Dabei geht es zum Teil um die Summe von Zeiten und Preisen.

Soweit alles kein Problem.

Nur, in der Tabelle befinden sich auch Text Informationen die ich gerne aus den jeweiligen Zellen auslesen möchte um sie dann in die neu generierte Zeile zusammen in eine Zelle zu schreiben.

Bsp:

| ARTNR | Einheiten | Zustext1 |
| L2 | 0,5 | Proxy Problem |
| L2 | 4,5 | Übernahme der Telefon Anlage |
| L2 | 1,5 | Anpassung des AD Schemas |
etc.

Ich habe es nun schon so weit geschafft, dass in der neu generierten Zeile nun folgendes steht:

| ARTNR | Einheit | Zustext1 |
| L2 | 6,5 | leer |

Was mir nun aber wichtig wäre wäre folgendes:

| ARTNR | Einheit | Zustext1 |
| L2 | 6,5 | Proxy Probleme, Übernahme der Telefon Anlage, Anpassung des AD Schemas |

Und genau hier hänge ich. Hat einer eine Ahnung, wie ich das in meiner Stored Procedur realisieren kann?

Wäre dankbar für Hilfe,

Mit freundlichen Grüßen

Emanuel
 
Ich gehe mal davon aus, dass Du die Summe der Einheiten so ermittelst:

SELECT ARTNR, Sum (Einheiten) FROM YourTable GROUP BY ARTNR

Dann könntest Du Dir eine Funktion schreiben, ungefähr so:

CREATE FUNCTION udf_ConcatBeschreibung (@ARTNR varchar (10)) RETURNS varchar (1000) AS
BEGIN
DECLARE @RetVal varchar (1000)

SET @RetVal = ''

SELECT @RetVal = @RetVal + Zustext1 + ',' FROM YourTable WHERE ARTNR = @ARTNR

RETURN @RetVal

END


Der Aufruf sieht dann wie folgt aus:
SELECT ARTNR, Sum (Einheiten), dbo.udfConcatBeschreibung (ARTNR) FROM YourTable GROUP BY ARTNR
 
Zurück