MySQL クエリ効率の向上: REGEXP は複数の LIKE 条件を置き換えます
MySQL クエリでは、多くの場合、複数のパターンの一致に基づいて行をフィルタリングする必要があります。複数の LIKE 条件を使用することもできますが、これは最も効率的な方法ではありません。 したがって、LIKE IN()
と同等の代替手段を探すことが魅力的になります。
考えられる解決策は、REGEXP 式を使用することです。 1 つの条件で複数のパターンを指定できるため、クエリが簡素化されます。 REGEXP を使用して指定されたクエリを変更しましょう:
<code class="language-sql">SELECT * FROM fiberbox WHERE field REGEXP '1740|1938|1940';</code>
このクエリでは、REGEXP 式により、field
列に指定されたパターン ('1740'、'1938'、または '1940') が含まれているかどうかがチェックされます。これにより、複数の LIKE 条件を使用する場合と同じフィルター効果が得られますが、パフォーマンスが向上する可能性があります。
REGEXP の使用効率は、使用される特定のスキーマと基礎となるデータベースの実装に依存することに注意してください。複雑なスキーマまたは大規模なデータ セットの場合は、最適なクエリ方法を決定するためにベンチマークを行うことをお勧めします。
以上がREGEXP は MySQL の複数の LIKE 条件のより効率的な代替手段ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。