이를 위해 FIND_IN_SET()을 사용할 수 있습니다. 먼저 테이블을 생성하겠습니다 -
mysql> create table DemoTable -> ( -> Number int -> ); Query OK, 0 rows affected (2.25 sec)
삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -
mysql> insert into DemoTable values(20); Query OK, 1 row affected (0.91 sec) mysql> insert into DemoTable values(60); Query OK, 1 row affected (0.69 sec) mysql> insert into DemoTable values(40); Query OK, 1 row affected (0.72 sec) mysql> insert into DemoTable values(800); Query OK, 1 row affected (0.75 sec)
select 문을 사용하여 테이블의 모든 레코드 표시 -
mysql> select *from DemoTable;
이것은 다음과 같은 출력을 생성합니다 -
+--------+ | Number | +--------+ | 20 | | 60 | | 40 | | 800 | +--------+ 4 rows in set (0.00 sec)
다음은 ASC 또는 DESC를 사용하지 않고 MySQL ORDER BY를 구현하는 쿼리입니다.
mysql> select *from DemoTable -> order by FIND_IN_SET(Number,'40,20,800,60');
이것은 다음과 같은 출력을 생성합니다 -
+--------+ | Number | +--------+ | 40 | | 20 | | 800 | | 60 | +--------+ 4 rows in set (0.14 sec)