MariaDB
[MySQL || MariaDB] ORDER BY 특정 값 우선 정렬(feat.FIELD)
.java
2020. 2. 29. 18:54
반응형
FIELD
개념
FIELD 함수를 이용하여 특정한 값을 우선적으로 정렬할 수 있다.
문법
문법에 들어가기 앞서, 공통 테이블 예시
기본 문법
SELECT * FROM 테이블명 ORDER BY FIELD(컬럼명,우선 정렬할 값,두번째 정렬할 값,세번째...);
예시 1.제목(subject) 컬럼에 값이 '제목3'이 제일 먼저,'제목5'가 그다음으로 들어간 row 먼저 정렬
SELECT subject FROM board ORDER BY FIELD(subject,'제목3','제목5'),subject;
결과
'제목3' 값을 가진 row가 첫 번째, '제목5'을 가진 row가 두 번째로 정렬됐고 그다음 subject 컬럼이 정렬됐다.
예시 2.제목(subject) 컬럼에 값이 '제목4'이 들어간 row 먼저 정렬하고, 나머진 제목을 기준으로 역 정렬 하기
SELECT subject FROM board ORDER BY FIELD(subject,'제목4'),subject DESC;
결과
특별 예시. 값의 인덱스 찾기(해당 값이 없을 경우 0 반환)
SELECT FIELD(subject,'제목1','제목2') FROM board;
결과
반응형