MySQLSelectステートメントDISTINCTforMultiple Columns?
複数の列に対するMySQLのselectステートメントDISTINCTを理解するために、例を見てテーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです
mysql> create table selectDistinctDemo -> ( -> InstructorId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> StudentId int, -> TechnicalSubject varchar(100) -> ); Query OK, 0 rows affected (0.50 sec)>
挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。クエリは次のとおりです
mysql> insert into selectDistinctDemo(StudentId,TechnicalSubject) values(121,'Java'); Query OK, 1 row affected (0.15 sec) mysql> insert into selectDistinctDemo(StudentId,TechnicalSubject) values(121,'MongoDB'); Query OK, 1 row affected (0.16 sec) mysql> insert into selectDistinctDemo(StudentId,TechnicalSubject) values(121,'MySQL'); Query OK, 1 row affected (0.15 sec) mysql> insert into selectDistinctDemo(StudentId,TechnicalSubject) values(298,'Python'); Query OK, 1 row affected (0.11 sec) mysql> insert into selectDistinctDemo(StudentId,TechnicalSubject) values(298,'SQL Server'); Query OK, 1 row affected (0.15 sec) mysql> insert into selectDistinctDemo(StudentId,TechnicalSubject) values(397,'C#'); Query OK, 1 row affected (0.13 sec)
selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです
mysql> select *from selectDistinctDemo;
以下は出力です
+--------------+-----------+------------------+ | InstructorId | StudentId | TechnicalSubject | +--------------+-----------+------------------+ | 1 | 121 | Java | | 2 | 121 | MongoDB | | 3 | 121 | MySQL | | 4 | 298 | Python | | 5 | 298 | SQL Server | | 6 | 397 | C# | +--------------+-----------+------------------+ 6 rows in set (0.00 sec)
これは、複数の列にselectステートメントDISTINCTを使用するためのクエリです
mysql> select InstructorId,StudentId,TechnicalSubject from selectDistinctDemo -> where InstructorId IN -> ( -> select max(InstructorId) from selectDistinctDemo -> group by StudentId -> ) -> order by InstructorId desc;
以下は出力です
+--------------+-----------+------------------+ | InstructorId | StudentId | TechnicalSubject | +--------------+-----------+------------------+ | 6 | 397 | C# | | 5 | 298 | SQL Server | | 3 | 121 | MySQL | +--------------+-----------+------------------+ 3 rows in set (0.10 sec)
-
selectステートメント内のMySQLcaseステートメント?
このために、CASEWHENステートメントを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> FirstName varchar(20), -> Score int -> ); Query OK, 0 rows affected (0.63 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('Jo
-
MySQLのカスタム列に複数の値を設定しますか?
このために、UNIONALLを使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable1987 ( UserValue int ); Query OK, 0 rows affected (2.90 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1987 values(4); Query OK, 1 row affected (0.22 sec) mysql> in