MS-Office-Forum
Google
   

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > SQL
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads Der Renner, 11 Entwicklertools für Access, Tipps & Trick und offene Datenbanken zum einzigartigen Preis.
Themen-Optionen Ansicht
Alt 29.10.2017, 12:49   #1
KDL
MOF User
MOF User
Standard T-SQL : MSSQL 2014 - Feldinhalte einer Spalte als String ausgeben

Mein Problem ist wahrscheinlich ganz leicht zu lösen, aber nachdem ich 3 Jahre fast nichts mehr mit Datenbanken gemacht habe, habe ich das wenige, was ich wusste wieder vergessen ;-)

Ich möchte die Inhalte einer Spalte in einer Zeile (als string) ausgeben. Das konkrete Beispiel ist, dass ich (ausgewählte) EMailadressen, die in einer Spalte [email] stehen so ausgeben:

xxx@web.de; yyy@t-online.de; zzz@gmail.de; ... usw.

Geht das einfach mit SQL oder braucht man dafür einen Schleife?

Vielen Dank schon mal,
Klaus
KDL ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 29.10.2017, 15:08   #2
hcscherzer
MOF Guru
MOF Guru
Standard

Bitte mal hier im Forum suchen nach "verketten" ... eventuell auch nebenan in der Access Abteilung.

__________________

Freundlichen Gruß
Hans-Christian
-----------------------------------------
Oft erwünscht, selten beachtet: nach Erledigung des Problems den Thread als erledigt zu markieren
-----------------------------------------
Ich möchte nur Mitglied in einem Verein sein, der Leute wie mich nicht als Mitglied aufnimmt (Groucho Marx).
-----------------------------------------
Ab sofort regelmässig: MOF Stammtisch in Bremen. Näheres hier.
hcscherzer ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 29.10.2017, 16:50   #3
Josef P.
MOF Guru
MOF Guru
Standard

Hallo!

Die Suche nach "XML PATH" könnte auch helfen.

mfg
Josef
Josef P. ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 29.10.2017, 17:02   #4
KDL
Threadstarter Threadstarter
MOF User
MOF User
Standard

@ Hans Christian

Hier im Forum zu suchen ist so eine Sache, denn die Suchfunktion hier liefert stets null Treffer! Aber kein Problem, dann habe ich halt Google bemüht - und auch was Brauchbares gefunden. Wie befürchtet geht es über Cursor, mit denen ich eigentlich auf dem Kriegsfuß stehe. Aber gut, ich habe das gefundene Beispiel verstanden und anpassen können:

Code:

DECLARE @result as varchar(8000)
DECLARE @zeile as varchar(100)
SET @result = ''

DECLARE result_cursor CURSOR FOR
    SELECT EMail FROM MListe where erhaelt_Newsletter= 1

OPEN result_cursor

FETCH NEXT FROM result_cursor INTO @zeile
WHILE @@FETCH_STATUS = 0
BEGIN
    SET @result = @result  + @zeile + '; '
    
    FETCH NEXT FROM result_cursor INTO @zeile
END
CLOSE result_cursor
DEALLOCATE result_cursor

SELECT @result
Vielen Dank für den Tipp.

@ Josef P.: Auch dir vielen Dank. Da mein Problem aber erstmal gelöst ist, behalte ich den Tipp mit "XML PATH" im Hinterkopf und probiere es bei Gelegenheit aus.
KDL ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 29.10.2017, 17:49   #5
Josef P.
MOF Guru
MOF Guru
Standard

Für dein Vorhaben brauchst du keinen Cursor.

Code:

DECLARE @result as varchar(8000)

SELECT
    @result  = ISNULL(@result + ';', '') + EMail 
FROM
    MListe 
where 
    erhaelt_Newsletter = 1
    and
    EMail > ''

SELECT @result
XML PATH wird interessant, wenn du über mehrere gruppierte Datensätze ein Art Concat-Aggregatfunktion benötigst.

mfg
Josef
Josef P. ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 29.10.2017, 18:45   #6
KDL
Threadstarter Threadstarter
MOF User
MOF User
Standard

Vielen Dank für den Tipp, ja so gefällt es mir noch besser.

Ich verstehe das Prinzip so, dass das Ergebnis in die Variable geschrieben, statt wie üblich als Tabelle ausgegeben wird. Genial einfach ;-)
KDL ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Copyright ©2000-2010 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günther Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.
Beachten Sie bitte auch unsere Nutzungsbedingungen.