LIKE 演算子と utf8_general_ci エンコーディングを使用した MySQL での大文字と小文字を区別しない検索で大文字と小文字が区別されるのはなぜですか?

Susan Sarandon
リリース: 2024-11-08 14:12:02
オリジナル
1053 人が閲覧しました

Why is Case-Insensitive Searching in MySQL with LIKE Operator and utf8_general_ci Encoding Case-Sensitive?

MySQL での大文字と小文字を区別しない検索

この投稿では、utf8_general_ci エンコーディングと MyISAM ストレージ エンジンを使用したテーブルで LIKE 演算子を使用する MySQL クエリの問題について説明します。

これを解決するには、次の方法があります。 2 つの推奨ソリューション:

1.バイナリ文字列の使用:

LIKE 演算子に BINARY キーワードを追加すると、大文字と小文字を区別しない検索を実現できます:

このアプローチはバイナリ文字列を強制するため、他のアプローチよりもパフォーマンスが高くなります。比較して効率を高めます。

2. COLLATE の使用:

または、COLLATE キーワードを使用して特定の照合規則を指定できます:

utf8_bin 照合を使用すると、大文字と小文字を区別しない比較が強制されます。この方法は柔軟性が高くなりますが、バイナリ文字列アプローチと比較してパフォーマンスにわずかな影響を与える可能性があります。

以上がLIKE 演算子と utf8_general_ci エンコーディングを使用した MySQL での大文字と小文字を区別しない検索で大文字と小文字が区別されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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