Jump to content

Abfrage und zugehörige Sprachen dazu holen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo zusammen,

 

mich würde mal interessieren ob es eine elegantere Lösung für mein Problem gibt:

 

Ich hole mit einer SQL Abfrage eine Liste an Prospekte aus der DB, muss nun in einer zusätzlichen Spalte alle verfügbaren Sprachen des Prospektes darstellen.

 

Momentan hole ich mir die kompletten Datensätze aus der DB wo ich denke dass das unnötig ist...

 

Versuche mit Subselects sind natürlich gescheitert weil das ergebnis mehrere zeilen liefert.

 

Über ne bessere Methode wäre ich dankbar denn die Seite sollte perfomant sein da wir mit großen Datenmengen konfrontiert sind.

 

Grüße Dirk

Link zu diesem Kommentar

HEUREKA ich habe die perfekte, elegante Lösung gefunden, das FOR XML PATH kommt auch darin vor was das allerdings bewirkt werde ich gleich noch nachlesen.

 

Gefunden habe ich die Lösung über die MySQL Funktion GROUP_CONCAT(T.Tag SEPARATOR ', ') AS Tags da aber T-SQL diese Funktion nicht kennt habe ich nach einem equivalent gesucht und mit STUFF auch gefunden.

 

Mein SQL (mal ein Test) sieht jetzt so aus:

 

select distinct 
A.pb1iname, A.pb1thumb, 
Sprachen=STUFF((SELECT distinct ','+pb1sprachKZ FROM tblPBserviceproduct WHERE pb1thumb=A.pb1thumb FOR XML PATH('')) , 1 , 1 , '' ) 
from tblPBserviceproduct A
where 
A.pb1iname = 'FL 0020'

 

Das Ergebnis ist schlichtweg beeindrucken und exakt das nachdem ich gesucht habe und anstatt mit allen Datensätzen in allen Sprachen zu hantieren kann ich meine gewohnt schnelle Abfrage weiter benutzen.

 

Das Ergebnis sieht so aus:

 

 

FL 0020 pg_fl_0020_de_cover.jpg D,E,ES,F,RU

 

Perfekt!

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...