ホームページ >データベース >mysql チュートリアル >MySQL で大文字と小文字を区別した比較を実現するにはどうすればよいですか?

MySQL で大文字と小文字を区別した比較を実現するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-28 07:37:14505ブラウズ

How Can I Achieve Case-Sensitive Comparisons in MySQL?

MySQL 照合順序における大文字と小文字の区別

MySQL データベースを使用する場合、データ ストレージに使用される照合順序を考慮することが重要です。照合順序は、データの比較、並べ替え、および大文字と小文字の区別に関するルールを定義します。デフォルトでは、MySQL は大文字と小文字を区別しない照合順序を使用しますが、これは常に適切であるとは限りません。

大文字と小文字を区別した比較が必要な場合は、テーブルの作成時またはデータ挿入時に適切な照合タイプを指定できます。 MySQL マニュアルによると、大文字と小文字を区別するために照合順序を _cs に設定できます。

大文字と小文字を区別する照合順序のリストを取得するには、次のクエリを実行します。

SHOW COLLATION WHERE COLLATION LIKE "%_cs"

ただし、さらなる調査により、MySQL は現在 utf8_*_cs 照合順序をサポートしていないことが判明しました。 utf8 フィールドの大文字と小文字を区別する必要がある場合は、代わりに utf8_bin を使用する必要があります。これは ORDER BY 操作に影響を与える可能性があることに注意してください。これを解決するには、COLLATE utf8_general_ci を ORDER BY 句に追加します。

例:

SELECT * FROM table_name ORDER BY column_name COLLATE utf8_general_ci;

以上がMySQL で大文字と小文字を区別した比較を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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