본문 바로가기
MySQL

[MySQL] 결과를 특정 순서로 정렬하기 ORDER BY FIELD()

by LightBlogger 2017. 12. 29.

다음과 같은 sandbox 테이블의 결과를 id 2, 1, 3 순서로 정렬하여 표기할 수 있을까?



가능하다. ORDER BY 자체는 오름차순ASC 과 내림차순DESC 만 가능하나,


뒤에 FIELD() 를 붙여 주면 우리가 원하는 순서로 정렬할 수 있다.


사용법은 다음과 같다. FIELD(필드명, 순서)


위에서 이야기한 대로 ID 2, 1, 3 순서로 결과를 정렬하고 싶다면 다음과 같이 적는다.


SELECT * FROM `sandbox` ORDER BY FIELD(id, 2, 1, 3);


결과는 다음과 같다.




반응형

댓글