MySQLの4,2,1,3のような注文のようなカスタムルールで注文するにはどうすればよいですか?
カスタムルールで注文するには、ORDER BY FIELD()を使用します。まずテーブルを作成しましょう-
mysql> create table DemoTable ( Number int ); Query OK, 0 rows affected (0.55 sec)
挿入コマンド-
を使用して、テーブルにいくつかのレコードを挿入しますmysql> insert into DemoTable values(1); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(4); Query OK, 1 row affected (0.22 sec) mysql> insert into DemoTable values(2); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable values(3); Query OK, 1 row affected (0.14 sec)
selectステートメントを使用してテーブルのすべてのレコードを表示する-
mysql> select *from DemoTable;
出力
+--------+ | Number | +--------+ | 1 | | 4 | | 2 | | 3 | +--------+ 4 rows in set (0.00 sec)
以下は、ORDER BYカスタムルールへのクエリです(例:4,2,1,3-
)。mysql> select *from DemoTable order by field(Number,4,2,1,3);
これにより、カスタム順序で次の出力が生成されます-
+--------+ | Number | +--------+ | 4 | | 2 | | 1 | | 3 | +--------+ 4 rows in set (0.00 sec)
-
MySQLでグループ化されたフィールドで並べ替える方法は?
グループ化されたフィールドをORDERBYするには、IN()とともにORDERBYCASEを使用します。 CASEはさまざまな条件を評価しますが、ORDERBYは値を昇順または降順で並べ替えます。 MySQL IN()は、一致するものを見つけるために使用されます。 まずテーブルを作成しましょう- mysql> create table DemoTable ( Value varchar(40) ); Query OK, 0 rows affected (0.52 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql>
-
MySQLでカスタムソート順を実装する
MySQLでカスタムの並べ替え順序を実装するには、ORDER BY FIELD()を使用する必要があります。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> Designation varchar(100) -> ); Query OK, 0 rows affected (1.65 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values