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)
これで、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)
ここで、BINARYを使用していないときに何が起こるかを見てみましょう。クエリは次のとおりです-
mysql> select Name like 'JOHN' from LikeBinaryDemo;
以下は出力です-
+------------------+ | Name like 'JOHN' | +------------------+ | 1 | +------------------+ 1 row in set (0.00 sec)
LIKE BINARYを使用して、MySQLで大文字と小文字を区別するように強制できます。
-
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
-
列が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