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

結果セットにない列に基づいてMySQL出力をソートするにはどうすればよいですか?


その出力の一部でもないか、結果セットに含まれていない列に基づいて、ソートされた出力を取得することは非常に可能です。これは、必要なフィールドを選択し、必要な並べ替え順序に基づいてフィールドの名前を書き込むことで実行できます。以下は、それを示す例です。ここでは、列「id」に基づいて、「Name」フィールドと「Address」フィールドを持つ結果セットを並べ替えました。

mysql> Select Name, Subject From Student ORDER BY Id;
+---------+-----------+
| Name    | Subject   |
+---------+-----------+
| Gaurav  | Computers |
| Aarav   | History   |
| Harshit | Commerce  |
| Raman   | Computers |
+---------+-----------+
4 rows in set (0.00 sec)

次のようにDESCまたはASCキーワードを使用することもできます

mysql> Select Name, Subject from Student ORDER BY Id DESC;
+---------+-----------+
| Name    | Subject   |
+---------+-----------+
| Raman   | Computers |
| Harshit | Commerce  |
| Aarav   | History   |
| Gaurav  | Computers |
+---------+-----------+
4 rows in set (0.00 sec)

  1. MySQLの結果セットを指定されたものと同じにする方法は?

    これには、MySQL FIND_IN_SET()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1563    -> (    -> StudentId int,    -> StudentName varchar(20)    -> ); Query OK, 0 rows affected (0.52 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into De

  2. MySQLの学生マークのある列に基づいてカスタムメッセージを設定する

    これには、CASEステートメントを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1952    (    Marks int    ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1952 values(35); Query OK, 1 row affected (0.00 sec) mysql> inse