blog.bartlweb - a technologist's external brain

komma-separierte Liste per SQL durchsuchen

Haben Sie sich auch schon immer gefragt wie man in einer SQL-Abfrage am Besten ermittelt ob ein Wert in einer durch Komma getrennten Liste zu finden ist? Die Antwort liegt im SQL-Befehl FIND_IN_SET().

FIND_IN_SET(value, field)

 

Beispiel:

Die Tabelle test enthält zwei Felder mit der Bezeichnung uid und listvalues wobei listvalues z.B. wie folgt aussieht: 1,12,33,124.

SELECT uid FROM test WHERE FIND_IN_SET('33', listvalues);

Dieser Artikel hat Dir deinen Tag gerettet?

... und mühevolles Probieren, Recherchieren und damit Stunden an Zeit gespart? Oder einfach nur Dein Problem gelöst?

Dann würde ich mich freuen, wenn Du meine Zeit für die Erstellung dieses Blogartikels mit einer kleinen Anerkennung honorierst:

Zahlung mit PayPal oder Kreditkarte.

Hinweis zur Verwendung

Die Übermittlung einer Zahlung ist eine persönliche Anerkennung Ihrerseits an den Entwickler (Christian Bartl, Privatperson). Eine Zahlung ist nicht zweckgebunden und es ist keine Gegenleistung zu erwarten. Bitte beachten Sie, dass für eine übermittelte Zahlung keine Quittung ausgestellt werden kann.

Über den Autor

Christian Bartl

Christian Bartl Requirements Engineer
& Solution Architect für Online und Mobile

Als Technologie-Enthusiast und begeisterter Programmierer entwickle ich in meiner Freizeit Websites, Software und IT-Lösungen, die mir selbst und anderen den Alltag vereinfachen.

mehr auf christian.bartl.me

Kommentare

  1. Super Sache für PHP und MySQL. Hat mir viel Arbeit erspart. Leider kennt der OleDbDataAdapter in VB.Net diesen Befehl nicht.

    SciFi-Autor
    Martin Stottmeister

    kommentieren

    1. Das Internet weiß alles:

      So geht es auch mit vb:

      SELECT * FROM table WHERE ','+csvlist+',' LIKE '%,7,%'

      kommentieren

Kommentar schreiben

Der hier angegebene Name wird gemeinsam mit deinem Kommentar auf der Website veröffentlicht.

Deine E-Mail-Adresse wird zur einmaligen Benachrichtigung bei Veröffentlichung des Kommentars genutzt.

Benachrichtigung per E-Mail über Antworten auf meinen Kommentar erhalten.

Bitte tippe die Zahlenkombination "6518" ein, nur dann kann ich deinen Kommentar entgegennehmen.

Bitte fülle dieses Feld nicht aus, nur dann kann ich deinen Kommentar entgegennehmen.