본문 바로가기
Database/MariaDB

MariaDB : ORDER BY절에 대해서

by 코딩쥐 2024. 10. 14.

Order by를 통해서 어떤 칼럼을 기준으로 어떤 정렬을 할 것인지를 설정할 수 있다. 크기 순서대로 나열하며, 오름차순(ascending)과 내림차순(descending) 정렬 방식이 있다. 오름차순은 작은 값부터 큰 값으로 출력되고, 내림차순은 큰 값부터 작은 값으로 출력된다. 

  • SELECT 칼럼명 FROM 테이블명 ORDER BY 칼럼명 ASC; 
    오름차순 정렬, 생략하게 되면 디폴트로 ASC로 지정된다.
  • SELECT 칼럼명 FROM 테이블명 ORDER BY 칼럼명 DESC; 

NULL이 있을 경우에는 ASC일 경우 가장 마지막에 정렬되고, DESC일 경우 가장 먼저 정렬된다. 

# sal(급여) 기준으로 오름차순
SELECT * FROM emp ORDER BY sal;

# sal(급여) 기준으로 내림차순
SELECT * FROM emp ORDER BY sal DESC;

# deptno(부서번호) 기준으로 오름차순, 부서 동일할 시 sal(급여)기준으로 내림차순
SELECT * FROM emp ORDER BY deptno, sal DESC;

 

Limit

쿼리 결과의 행 수를 제한하는 데 사용되는 키워드이다. ANSI SQL 표준에는 포함되어있지 않고, 주로 MySQL과 MariaDB에서 사용된다. 

  • SELECT 칼럼명 FROM 테이블명 ORDER BY 칼럼명 LIMIT 시작지점, 개수;
#LIMIT를 설정했을 때 (맨처음부터 5개의 행)
SELECT
	ename,
	deptno
FROM	
	emp
ORDER BY deptno
LIMIT 0, 5;  

#LIMIT를 설정하지 않았을 때
SELECT
	ename,
	deptno
FROM	
	emp
ORDER BY deptno;