MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL LIKEで大文字と小文字を区別するにはどうすればよいですか?


LIKE BINARYを使用してMySQLLIKEで大文字と小文字を区別するようにするには、構文は次のとおりです-

select yourColumnName like binary 'anyStringValue' from yourTableName;

上記の概念を理解するために、テーブルを作成しましょう。以下は、テーブルを作成するためのクエリです-

mysql> create table LikeBinaryDemo
   −> (
   −> Name varchar(200)
   −> );
Query OK, 0 rows affected (0.58 sec)

これで、小文字のレコードを挿入して、MySQLLIKEで大文字と小文字を区別することができます-

mysql> insert into LikeBinaryDemo values('john');
Query OK, 1 row affected (0.12 sec)

テーブル内のレコードを表示します。クエリは次のとおりです-

mysql> select *from LikeBinaryDemo;

以下は出力です-

+------+
| Name |
+------+
| john |
+------+
1 row in set (0.00 sec)
ケース1-BINARYの使用

これで、LIKE BINARYを使用して、MySQLLikeで大文字と小文字を区別することができます。

バイナリのように。この場合、「john」と「JOHN」を比較すると、値は0になります。クエリは次のとおりです-

mysql> select Name like binary 'JOHN' from LikeBinaryDemo;

以下は出力です-

+-------------------------+
| Name like binary 'JOHN' |
+-------------------------+
|                       0 |
+-------------------------+
1 row in set (0.00 sec)
ケース2-BINARYを使用しない

ここで、BINARYを使用していないときに何が起こるかを見てみましょう。クエリは次のとおりです-

mysql> select Name like 'JOHN' from LikeBinaryDemo;

以下は出力です-

+------------------+
| Name like 'JOHN' |
+------------------+
| 1 |
+------------------+
1 row in set (0.00 sec)

LIKE BINARYを使用して、MySQLで大文字と小文字を区別するように強制できます。


  1. MySQLクエリでCASE条件でカウントを使用するにはどうすればよいですか?

    MySQLでこれにCASEWHENを使用し、COUNT()メソッド内でCASE条件を設定してカウントします。まずテーブルを作成しましょう- mysql> create table DemoTable1374    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> Name varchar(20),    -> Score int    -> ); Query OK, 0 rows affe

  2. 列がMySQLの主キーであるかどうかをどのように取得しますか?

    列が主キーであるかどうかを取得するには、COLUMN_NAMEおよびCOLUMN_KEY=PRIを使用します。これで、全体の構文は次のようになります- select column_name, case when column_key= 'PRI' then 'yourMessage1' else ''yourMessage2' end as anyAliasName from information_schema.columns where table_schema =database() and `table_name` = yourT