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

MySQLで期待どおりに機能しない複数の列で並べ替えますか?


以下は、複数の列で並べ替える構文です-

select *from yourTableName
order by yourColumnName1 DESC,yourColumnName2,yourColumnName3;

テーブルを作成しましょう-

mysql> create table demo29
−> (
−> value1 int,
−> value2 int
−> );
Query OK, 0 rows affected (1.67 sec)

挿入コマンド-

を使用して、いくつかのレコードをテーブルに挿入します。
mysql> insert into demo29 values(10,500);
Query OK, 1 row affected (0.15 sec)

mysql> insert into demo29 values(14,400);
Query OK, 1 row affected (0.14 sec)

mysql> insert into demo29 values(9,500);
Query OK, 1 row affected (0.12 sec)

mysql> insert into demo29 values(13,400);
Query OK, 1 row affected (0.11 sec)

mysql> insert into demo29 values(45,500);
Query OK, 1 row affected (0.14 sec)

mysql> insert into demo29 values(11,400);
Query OK, 1 row affected (0.10 sec)

selectステートメントを使用してテーブルのレコードを表示する-

mysql> select *from demo29;

これにより、次の出力が生成されます-

+--------+--------+
| value1 | value2 |
+--------+--------+
|     10 |    500 |
|     14 |    400 |
|      9 |    500 |
|     13 |    400 |
|     45 |    500 |
|     11 |    400 |
+--------+--------+
6 rows in set (0.00 sec)

以下は、複数の列で並べ替えるクエリです-

mysql> select *from demo29
−> order by value2 desc,value1;

これにより、次の出力が生成されます-

+--------+--------+
| value1 | value2 |
+--------+--------+
|      9 |    500 |
|     10 |    500 |
|     45 |    500 |
|     11 |    400 |
|     13 |    400 |
|     14 |    400 |
+--------+--------+
6 rows in set (0.00 sec)

  1. MySQLの列の順序を変更できますか?

    はい、列の順序を変更できます。これは、ALTERコマンドとAFTERを使用して実行し、個々の列の新しい順序を設定できます。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> `Student_Key_Age` int,    -> `Student_Key_Name` varchar(20),    -> `Student_Key_CountryName` varchar(20)    ->

  2. MySQLでのAUTO_INCREMENT列の操作

    MySQLでAUTO_INCREMENT列を操作する方法を理解しましょう- AUTO_INCREMENT属性は、新しい行の一意のIDを生成するために使用されます。このステートメントがどのように機能するかを見てみましょう。その前に、以下のクエリを検討してください- クエリ CREATE TABLE tableName (    id MEDIUMINT NOT NULL AUTO_INCREMENT,    name CHAR(30) NOT NULL, PRIMARY KEY (id) ); INSERT INTO tableName (name