Database/MySQL

[MySQL] ORDER BY 문

IT수정 2024. 9. 9. 15:12

ORDER BY 문은 결과물에 대해 영향을 미치지는 않지만, 결과가 원하는 순서대로 정렬하여 출력할 수 있는 구문이다.

 

ORDER BY 문의 기본 형식

SELECT [열] FROM [테이블] WHERE [열] = [조건값] ORDER BY [열] [ASC, DESC]

 

ORDER BY 문으로 열 기준 정렬하기

-- 1개 열 기준으로 정렬
SELECT * FROM userTBL ORDER BY symbol

-- 2개 이상 열 기준으로 정렬
SELECT * FROM userTBL
WHERE sector IS NOT NULL AND sector <> ''
ORDER BY sector, industry

-- 정렬 순서는 입력한 순서대로 정렬된다.

 

오름차순과 내림차순 정렬하기

-- 먼저 가입한 순서대로 회원들의 이름과 가입날짜 출력하기(기본값 = 오름차순)
SELECT name, mDate FROM userTBL ORDER BY mDate

-- 내림차순 정렬
SELECT name, mDate FROM userTBL ORDER BY mDate DESC

-- 키가 큰 순서대로 정렬하되 만약 키가 같을 경우
-- 이름 순으로 정렬해서 나오는 데이터의 이름과 키를 출력하기
SELECT name, height FROM userTBLORDER BY height DESC, name ASC

 

LIMIT으로 상위 N개 데이터 검색하기

-- 상위 10개 데이터 검색
SELECT * FROM userTBL
ORDER BY ipo_year DESC, symbol ASC
LIMIT 10;

 

LIMIT + OFFSET으로 지정한 개수만큼 행 건너뛰고 검색하기

-- 1000번째 행부터 시작하여 10개의 행을 반환
SELECT * 
FROM userTBL 
ORDER BY userId 
LIMIT 1000, 10;

-- 1000번째 행부터 시작하여 10개의 행을 반환
SELECT * 
FROM userTBL 
ORDER BY userId 
LIMIT 10 OFFSET 1000;

'Database > MySQL' 카테고리의 다른 글

[MySQL] 테이블 생성과 데이터 조작  (0) 2024.09.10
[MySQL] 데이터 그룹화  (0) 2024.09.09
[MySQL] 와일드카드  (3) 2024.09.09
[MySQL] WHERE 문  (0) 2024.09.09
[MySQL] SELECT 문  (0) 2024.09.09