ホームページ >データベース >mysql チュートリアル >カンマ区切り値を使用して MySQL テーブルから電子メールを効率的に取得するにはどうすればよいですか?

カンマ区切り値を使用して MySQL テーブルから電子メールを効率的に取得するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-09 22:50:11355ブラウズ

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

MySQL でカンマ区切り値を使用してテーブルから電子メールを取得する

カンマ区切り値を使用してデータベース テーブルをクエリすると、課題が生じる可能性があります。顧客の電子メールを含む customer と、コンマ区切りの電子メール アドレスを保持する to フィールドを持つ imap_emails という 2 つのテーブルがあるシナリオを考えてみましょう。電子メールを取得し、to フィールドと from フィールドに対して検索するには、従来の LIKE 条件では不十分な場合があります。

より効率的な解決策は、FIND_IN_SET 関数を使用することです。この関数は、カンマ区切りの文字列内に特定の値が存在するかどうかを評価し、検索結果を効果的に絞り込むことができます。 FIND_IN_SET を使用してクエリを修正したバージョンを次に示します。

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

このクエリは、顧客の電子メール アドレスが imap_emails の to フィールドに表示される電子メールを取得することに注意してください。要件に応じて、クエリを変更して検索条件をさらに絞り込むことができます。

以上がカンマ区切り値を使用して MySQL テーブルから電子メールを効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。