MySQLの大文字と小文字を区別しないDISTINCT?
大文字と小文字を区別しない区別が必要な場合は、UPPER()またはLOWER()を使用する必要があります。
ケース1: UPPER()を使用します。
構文は次のとおりです。
SELECT DISTINCT UPPER(yourColumnName) FROM yourTableName;
ケース2: LOWER()を使用します。
構文は次のとおりです。
SELECT DISTINCT LOWER(yourColumnName) FROM yourTableName;
上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです。
mysql> create table CaseInsensitiveDistinctDemo -> ( -> Id int NOT NULL AUTO_INCREMENT, -> UserEmailId varchar(30), -> UserPassword varchar(10), -> PRIMARY KEY(Id) -> ); Query OK, 0 rows affected (0.64 sec)
これで、insertコマンドを使用してテーブルにいくつかのレコードを挿入できます。クエリは次のとおりです。
mysql> insert into CaseInsensitiveDistinctDemo(UserEmailId,UserPassword) values('[email protected]','john123'); Query OK, 1 row affected (0.15 sec) mysql> insert into CaseInsensitiveDistinctDemo(UserEmailId,UserPassword) values('[email protected]','654321'); Query OK, 1 row affected (0.43 sec) mysql> insert into CaseInsensitiveDistinctDemo(UserEmailId,UserPassword) values('[email protected]','999999'); Query OK, 1 row affected (0.14 sec) mysql> insert into CaseInsensitiveDistinctDemo(UserEmailId,UserPassword) values('[email protected]','334556'); Query OK, 1 row affected (0.16 sec) mysql> insert into CaseInsensitiveDistinctDemo(UserEmailId,UserPassword) values('[email protected]','1010101'); Query OK, 1 row affected (0.13 sec) mysql> insert into CaseInsensitiveDistinctDemo(UserEmailId,UserPassword) values('[email protected]','12345678'); Query OK, 1 row affected (0.20 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです。
mysql> select *from CaseInsensitiveDistinctDemo;
出力は次のとおりです。
+----+-----------------+--------------+ | Id | UserEmailId | UserPassword | +----+-----------------+--------------+ | 1 | [email protected] | john123 | | 2 | [email protected] | 654321 | | 3 | [email protected] | 999999 | | 4 | [email protected] | 334556 | | 5 | [email protected] | 1010101 | | 6 | [email protected] | 12345678 | +----+-----------------+--------------+ 6 rows in set (0.00 sec)
大文字と小文字を区別しない個別を選択するためのクエリは次のとおりです。
ケース1: UPPER()を使用します。クエリは次のとおりです。
mysql> select distinct upper(UserEmailId) from CaseInsensitiveDistinctDemo;
出力は次のとおりです。
+--------------------+ | upper(UserEmailId) | +--------------------+ | [email protected] | | [email protected] | | [email protected] | | [email protected] | +--------------------+ 4 rows in set (0.06 sec)
ケース2: LOWER()を使用します。クエリは次のとおりです。
mysql> select distinct lower(UserEmailId) from CaseInsensitiveDistinctDemo;
出力は次のとおりです。
+--------------------+ | lower(UserEmailId) | +--------------------+ | [email protected] | | [email protected] | | [email protected] | | [email protected] | +--------------------+ 4 rows in set (0.00 sec)
-
MySQLのリストにある特定のアイテムの個別の数
特定のアイテムの明確な数を見つけるには、GROUP BY句とともにCOUNT()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1854 ( Name varchar(20) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1854 values(
-
MySQLで個別の列名を表示する
テーブルを作成しましょう- mysql> create table DemoTable1996 ( ShippingDate datetime, CustomerName varchar(20) ); Query OK, 0 rows affected (0.84 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1996 values('2019-12-21 10:45:00','Chris'); Query O