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

MySQLを使用して、列を並べ替えることができますが、0が最後になることを許可しますか?


ORDER BYを使用すると、列を並べ替えることができます。0が最後になります。構文は次のとおりです-

select *from yourTableName order by yourFieldName = 0,yourFieldName;

上記の概念を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-

mysql> create table SortColumnZeroAtLastDemo
   −> (
   −> RankNumber int
   −> );
Query OK, 0 rows affected (1.40 sec)

これで、次のクエリを使用してテーブルにレコードを挿入できます-

mysql> insert into SortColumnZeroAtLastDemo values(100);
Query OK, 1 row affected (0.20 sec)

mysql> insert into SortColumnZeroAtLastDemo values(0);
Query OK, 1 row affected (0.17 sec)

mysql> insert into SortColumnZeroAtLastDemo values(0);
Query OK, 1 row affected (0.11 sec)

mysql> insert into SortColumnZeroAtLastDemo values(50);
Query OK, 1 row affected (0.13 sec)

mysql> insert into SortColumnZeroAtLastDemo values(10);
Query OK, 1 row affected (0.15 sec)

mysql> insert into SortColumnZeroAtLastDemo values(0);
Query OK, 1 row affected (0.17 sec)

mysql> insert into SortColumnZeroAtLastDemo values(40);
Query OK, 1 row affected (0.12 sec)

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from SortColumnZeroAtLastDemo;

以下は出力です-

+------------+
| RankNumber |
+------------+
|        100 |
|          0 |
|          0 |
|         50 |
|         10 |
|          0 |
|         40 |
+------------+
7 rows in set (0.00 sec)

これは、最初に説明した構文を使用して、列を並べ替え、最後に値0を設定するためのクエリです-

mysql> select *from SortColumnZeroAtLastDemo order by RankNumber = 0,RankNumber;

以下は出力です-

+------------+
| RankNumber |
+------------+
|         10 |
|         40 |
|         50 |
|        100 |
|          0 |
|          0 |
|          0 |
+------------+
7 rows in set (0.00 sec)

  1. MySQLの特定の単語を無視して列を並べ替える

    まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Name text    -> ); Query OK, 0 rows affected (1.31 sec) 挿入コマンドを使用して、テーブルにいくつかのレコードを挿入します。ここでは、「name」という特定の単語を含む名前を挿入しましたが、無視する必要があります- mysql> insert into DemoTable values('John 7'); Quer

  2. MySQLテーブルの列として「年」を使用できますか?

    はい、予約語ではないため、MySQLテーブルの列名として年を指定できます。まずテーブルを作成しましょう- mysql> create table DemoTable (    Year int ); Query OK, 0 rows affected (0.87 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values(1995); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable v