ホームページ > データベース > mysql チュートリアル > 複数の値に対して MySQL LIKE 演算子を効果的に使用する方法

複数の値に対して MySQL LIKE 演算子を効果的に使用する方法

Mary-Kate Olsen
リリース: 2025-01-06 00:18:38
オリジナル
353 人が閲覧しました

How to Use MySQL LIKE Operator for Multiple Values Effectively?

複数の値に MySQL のような演算子を使用する

問題:

MySQL クエリが試行しています「スポーツ」または「パブ」のいずれかを含む値の一致に LIKE 演算子を使用すると、結果が生成されません。望ましい結果。

クエリ:

SELECT * FROM table WHERE interests LIKE ('%sports%', '%pub%')
ログイン後にコピー

期待される動作:

クエリは、「 「興味」フィールドに「スポーツ」または「パブ」のいずれかが含まれているか、

説明:

この問題は、複数のパターンを持つ LIKE 演算子に OR 条件が必要なために発生します。提供されたクエリは、適切な OR ロジックを使用せずに 2 つの連続した LIKE 演算子を使用しようとしているため、正しく一致しません。

解決策 1: OR 条件

より単純な解決策は、次のとおりです。複数の一致基準を指定するための OR 演算子:

SELECT * FROM table WHERE interests LIKE '%sports%' OR interests LIKE '%pub%'
ログイン後にコピー

解決策 2: REGEXP演算子

もう 1 つの方法は、REGEXP (正規表現) 演算子を使用することです。これは、単一の式を使用したパターン マッチングをサポートします。

SELECT * FROM table WHERE interests REGEXP 'sports|pub'
ログイン後にコピー

この式では | が使用されます。 (パイプ) 文字を使用して 2 つのキーワード間の論理 OR を指定すると、「スポーツ」または「パブ」またはその両方に一致する単一のパターンが得られます。

複数のパターンを一致させるには、REGEXP 演算子の方が効率的であることに注意してください。 OR 条件で LIKE を使用する場合と比較します。

以上が複数の値に対して MySQL LIKE 演算子を効果的に使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート