最初に値に基づいてアイテムを選択し、次にMySQLの残りのレコードの日付に基づいて注文します
ORDER BYを使用してレコードを修正し、表示します
select * from yourTableName order by yourColumnName1=yourValue desc,yourColumnName2;
まずテーブルを作成しましょう-
mysql> create table DemoTable1932 ( UserName varchar(20), ShippingDate date ); Query OK, 0 rows affected (0.00 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable1932 values('Chris','2018-10-12'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1932 values('David','2019-04-11'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1932 values('Mike','2016-12-04'); Query OK, 1 row affected (0.00 sec) mysql> insert into DemoTable1932 values('Carol','2017-12-26'); Query OK, 1 row affected (0.00 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select * from DemoTable1932;
これにより、次の出力が生成されます-
+----------+--------------+ | UserName | ShippingDate | +----------+--------------+ | Chris | 2018-10-12 | | David | 2019-04-11 | | Mike | 2016-12-04 | | Carol | 2017-12-26 | +----------+--------------+ 4 rows in set (0.00 sec)
これは、最初に値に基づいてアイテムを選択し、次に日付に基づいて注文するクエリです-
mysql> select * from DemoTable1932 order by UserName='David' desc,ShippingDate;
これにより、次の出力が生成されます-
+----------+--------------+ | UserName | ShippingDate | +----------+--------------+ | David | 2019-04-11 | | Mike | 2016-12-04 | | Carol | 2017-12-26 | | Chris | 2018-10-12 | +----------+--------------+ 4 rows in set (0.00 sec)
-
MySQLテーブルの各値の最大値を選択しますか?
このためには、MAX()とともにGROUPBY句を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> CountryName varchar(20), -> Population int -> ); Query OK, 0 rows affected (0.56 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoT
-
MySQLの最初の3つの列の値に特定の値を設定しますか?
最初の3つの値のみに特定の値を設定するには、LIMIT3を使用する必要があります。最初にテーブルを作成しましょう- mysql> create table DemoTable1968 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(20) ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> inser