MariaDB SQL

ORDER BY FIELD()를 사용하여 특정한 값을 우선 정렬할 수 있다.

ssamhago 2023. 2. 21. 14:18
728x90
320x100

ORDER BY FIELD ()

 

ORDER BY FIELD (필드명, 정렬값1, 정렬값 2, ... ) 를 기억하자.

 

 

EXAM
IDX VAL
1 A
2 B
3 D
4 C
5 E

 

 

위의 테이블(EXAM)에서 VAL의 정렬순서를 A→C→E→D→B 로 하고 싶을 때는


SELECT IDX, VAL
FROM EXAM
ORDER BY FIELD(VAL,'A','C','E','D','B');


SELECT IDX, VAL
FROM EXAM
ORDER BY FIELD(VAL,'D','B'), VAL;

[실행결과]
EXAM
IDX VAL
1 A
4 C
5 E
3 D
2 B
위의 테이블(EXAM)에서 VAL의 정렬순서를 E→A→B→C→D 로 하고 싶을 때는

SELECT IDX, VAL
FROM EXAM
ORDER BY FIELD (VAL,'E') DESC, VAL ASC;

[실행결과]
EAXM
IDX VAL
5 E
1 A
2 B
4 C
3 D

 

728x90
반응형