개발기록/Mysql

[Mysql] ORDER BY 와 CASE WHEN

네이처리 2022. 10. 11. 17:37
728x90
반응형

 

공부하면서 정리한 내용입니다

참고한 내용은 링크를 확인해주세요


 

 

-

ORDER BY

order by는 나열한 순서대로 우선순위 적용되어 정렬된다.

SELECT * FROM 테이블 ORDER BY 컬럼명 [, 컬럼명] 

SELECT * FROM 테이블 ORDER BY 컬럼명 ASC   // 오름차순 ( Default )
SELECT * FROM 테이블 ORDER BY 컬럼명 DESC  // 내림차순

case when은 컬럼내 우선순위를 정할 수 있다.

SELECT * FROM 테이블 ORDER BY (CASE 컬럼명 WHEN 조건 THEN 1 WHEN 조건 THEN 2 ELSE 3 END)

 

예제

SELECT * FROM candies ORDER BY A.date DESC , A.name ASC, ( CASE WHEN os='aos' THEN 1 WHEN os='ios' THEN 2 ELSE 3 END )

1순위 date내림차순 

2순위 name오름차순 

3순위 os가 aos일때 선순위,ios 일때 후순위

그외의 것은 4순위

 

 

-

 

 


728x90
반응형