📗 Do it! SQL 입문

[SQL 입문] ORDER BY 문으로 데이터 정렬하기

harveydent 2023. 6. 16. 22:20
728x90

03 - 3 ORDER BY 문으로 데이터 정렬하기

데이터를 정렬하려면 ORDER BY 문을 SELECT 문의 가장 마지막에 추가해 사용합니다.

-- ORDER BY 문의 기본 형식
SELECT [열] FROM [테이블] WHERE [열] = [조건값] ORDER BY [열] [ASC, DESC]
--														  1		  2
  1. [열] : 정렬할 열 이름을 입력한다.
  2. [ASC, DESC] : 정렬 기준에 따라 오름차순, 내림차순을 정의한다.

 

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

-- 1개 열 기준으로 정렬 : symbol, company_name

-- 1
SELECT * FROM nasdaq_company ORDER BY symbol
-- 2
SELECT * FROM nasdaq_company ORDER BY company_name
-- 2개 열 기준으로 정렬 : sector, industry 순
SELECT * FROM nasdaq_company
WHERE sector IS NOT NULL AND sector <> ''
ORDER BY sector, industry
-- 2개 열 기준으로 정렬 : industry, sector 순
SELECT * FROM nasdaq_company
WHERE sector IS NOT NULL AND sector <> ''
ORDER BY industry, sector

ASC으로 오름차순 정렬하기

-- symbol 열을 오름차순으로 정렬
SELECT * FROM nasdaq_company
ORDER BY symbol ASC

DESC으로 내림차순 정렬하기

-- symbol 열을 내림차순으로 정렬
SELECT * FROM nasdaq_company
ORDER BY symbol DESC

오름차순과 내림차순을 조합해 정렬하기

-- sector 열을 오름차순, symbol 열을 내림차순으로 정렬
SELECT * FROM nasdaq_company
WHERE sector IS NOT NULL AND sector <> ''
ORDER BY sector ASC, symbol DESC

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

-- ipo_year 열을 내림차순, symbol 열을 오름차순으로 정렬한 다음 상위 10개 데이터 검색
SELECT TOP 10 * FROM nasdaq_company
ORDER BY ipo_year DESC, symbol ASC

OFFSET···FETCH NEXT로 지정한 개수만큼 행 건너뛰고 검색하기

1000개의 데이터를 건너뛰고 출력

-- 1000개의 데이터를 건너뛰고 출력
SELECT * FROM nasdaq_company
ORDER BY symbol
OFFSET 1000 ROWS

 

실전 SQL

퀴즈 4. nasdaq_company 테이블에서 ipo_year 열이 2021년인 데이터 중에 sector 열이 Finance인 데이터를 검색해서 industry 오름차순으로 정렬하고, 같은 industry일 경우 close_price가 높은 순으로 출력하세요

더보기
SELECT * FROM nasdaq_company
WHERE ipo_year = 2021 AND sector = 'Finance'
ORDER BY industry ASC, close_price DESC
728x90