[解決済み】MySQLでSQLの大文字小文字を区別した文字列比較を行うには?
2022-05-05 17:13:47
質問
大文字と小文字が混在した5文字を返す関数がありますが、この文字列に対してクエリを実行すると、大文字と小文字に関係なく値が返されます。
MySQL の文字列クエリで大文字と小文字を区別するようにするにはどうすればよいですか?
どのように解決するのですか?
http://dev.mysql.com/doc/refman/5.0/en/case-sensitivity.html
<ブロッククオートデフォルトのキャラクタセットと照合順序は latin1 と latin1_swedish_ci ですので、バイナリ以外の文字列比較はデフォルトで大文字と小文字を区別しません。つまり、col_name LIKE 'a%' で検索すると、Aあるいはaで始まるすべてのカラム値が得られるということです。この検索で大文字小文字を区別するには、オペランドのいずれかが大文字小文字を区別するかバイナリ照合順序になっていることを確認します。例えば、latin1文字セットの列と文字列を比較する場合、COLLATE演算子を使用して、オペランドの照合順序をlatin1_general_csあるいはlatin1_binにすることが可能です。
col_name COLLATE latin1_general_cs LIKE 'a%'
col_name LIKE 'a%' COLLATE latin1_general_cs
col_name COLLATE latin1_bin LIKE 'a%'
col_name LIKE 'a%' COLLATE latin1_bin
あるカラムを常に大文字小文字を区別して扱いたい場合は、大文字小文字を区別する照合順序またはバイナリ照合順序で宣言してください。
関連
-
[解決済み] MySQLのカラムを並べ替えるには?
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] SQLテーブルで重複する値を検索する
-
[解決済み] SQL ServerでJOINを使用してUPDATE文を実行するにはどうすればよいですか?
-
[解決済み] MySQLの複数行を1つのフィールドに連結することはできますか?
-
[解決済み] MySQLで'insert if not exists'を行うにはどうしたらいいですか?
-
[解決済み] SQL Serverでテーブルからカラム名を取得するにはどうすればよいですか?
-
[解決済み] MySQLのクエリ文字列が含まれている
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】1052:フィールドリストの列「id」が曖昧である
-
[解決済み】MySQLエラー#1071 - 指定されたキーが長すぎる; キーの最大長は767バイトです。
-
[解決済み] 親の行を削除または更新できない: 外部キー制約に失敗 - MYSQL
-
[解決済み】mysqladmin: 'localhost'でのサーバーへの接続に失敗しました。
-
[解決済み] エラー 1115 (42000)。不明な文字セットです。'utf8mb4'
-
[解決済み] mysql 拡張は非推奨で、将来的に削除されます: 代わりに mysqli か PDO を使ってください [重複] 。
-
[解決済み] WHEREで集計関数は使用できません "というエラーを回避する方法
-
[解決済み] <TABLE> のテーブルストレージエンジンには、order by クエリでこのオプションがありません (ERROR 1031)。
-
[解決済み] WindowsでMySQLの画面コンソールをクリアする方法は?
-
[解決済み] mysqladminのフラッシュホストでブロックを解除する方法