Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann man in MySQL effizient nach durch Kommas getrennten Werten suchen?

Wie kann man in MySQL effizient nach durch Kommas getrennten Werten suchen?

DDD
Freigeben: 2024-12-14 04:02:10
Original
267 Leute haben es durchsucht

How to Efficiently Search Comma-Separated Values in MySQL?

Suchen von MySQL-Daten mit durch Kommas getrennten Werten

In bestimmten Szenarien können Datenbanken durch Kommas getrennte Werte in Spalten enthalten, z. B. in der Dies ist bei E-Mails der Fall, die im „An“-Feld einer Tabelle gespeichert sind. Bei der Suche nach solchen Daten ist es häufig erforderlich, bestimmte Werte in der durch Kommas getrennten Liste zu finden.

Ein Ansatz, dies zu beheben, ist die Verwendung der Funktion FIND_IN_SET. Diese Funktion gibt die Position eines angegebenen Teilstrings innerhalb eines Strings zurück. Im Zusammenhang mit der Suche nach E-Mails können wir FIND_IN_SET verwenden, um zu überprüfen, ob die E-Mail-Adresse eines Kunden mit einem der Werte im „An“-Feld einer E-Mail übereinstimmt.

Stellen Sie sich einen Kunden-Tabelle mit einer email-Spalte und einer imap_emails-Tabelle mit einer Spalte an mit durch Kommas getrennten E-Mail-Adressen. Die folgende Abfrage zeigt, wie wir mit FIND_IN_SET nach E-Mails basierend auf Kunden-E-Mail-Adressen suchen können:

SELECT *
FROM imap_emails
INNER JOIN customers
ON FIND_IN_SET(customers.email, imap_emails.to) > 0;
Nach dem Login kopieren
Diese Abfrage gibt alle Zeilen aus der Tabelle

imap_emails zurück, in der die E-Mail-Adresse des Kunden gefunden wird innerhalb des „an“-Feldes. Es ist jedoch wichtig zu beachten, dass dabei nicht berücksichtigt wird, ob die E-Mail-Adresse mehrmals vorkommt. Wenn dies ein Problem darstellt, müssen Sie die Abfrage möglicherweise entsprechend ändern.

Mit der Funktion FIND_IN_SET können Sie effektiv nach Werten in durch Kommas getrennten Daten suchen und so einen flexiblen und effizienten Mechanismus zum Abfragen solcher Datenstrukturen bereitstellen in MySQL.

Das obige ist der detaillierte Inhalt vonWie kann man in MySQL effizient nach durch Kommas getrennten Werten suchen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage