Maison >base de données >tutoriel mysql >Comment puis-je récupérer efficacement des e-mails à partir de tables MySQL avec des valeurs séparées par des virgules ?

Comment puis-je récupérer efficacement des e-mails à partir de tables MySQL avec des valeurs séparées par des virgules ?

DDD
DDDoriginal
2024-12-09 22:50:11355parcourir

How Can I Efficiently Retrieve Emails from MySQL Tables with Comma-Separated Values?

Récupérer des e-mails à partir de tables avec des valeurs séparées par des virgules dans MySQL

Interroger des tables de base de données avec des valeurs séparées par des virgules peut présenter des défis. Considérez le scénario dans lequel vous disposez de deux tables : clients contenant les e-mails des clients et imap_emails avec le champ to contenant des adresses e-mail séparées par des virgules. Pour récupérer des e-mails et effectuer une recherche dans les champs vers et depuis, une condition LIKE traditionnelle peut ne pas suffire.

Une solution plus efficace consiste à utiliser la fonction FIND_IN_SET. Cette fonction évalue si une valeur spécifique est présente dans une chaîne séparée par des virgules, vous permettant d'affiner efficacement les résultats de recherche. Voici une version modifiée de votre requête à l'aide de FIND_IN_SET :

SELECT *
FROM imap_emails
INNER JOIN customers
ON FIND_IN_SET(customers.email, imap_emails.to) > 0

Notez que cette requête récupère les e-mails pour lesquels l'adresse e-mail du client apparaît dans le champ à de imap_emails. En fonction de vos besoins, vous pouvez modifier la requête pour affiner davantage les critères de recherche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn