SQL 정렬 명령을 이용한 데이터 정렬
데이터베이스에서 데이터를 조회할 때, 원하는 순서대로 정렬하는 것은 매우 중요합니다. SQL은 데이터를 정렬하기 위한 강력한 기능을 제공합니다. 이번 글에서는 SQL의 정렬 명령인 `ORDER BY`에 대해 자세히 알아보고, 예제 결과도 함께 살펴보겠습니다.
ORDER BY 기본 사용법
SQL에서 데이터를 정렬하기 위해서는 `ORDER BY` 키워드를 사용합니다. 기본적인 문법은 다음과 같습니다.
SELECT 열1, 열2, ...
FROM 테이블명
ORDER BY 열1 [ASC|DESC], 열2 [ASC|DESC], ...;
`열1`, `열2`, | ...: 정렬하고자 하는 열 이름들. |
`ASC`, `DESC`: | 오름차순 정렬 (기본값), 내림차순 정렬 |
`Customers` 테이블에서 Country을 오름차순으로 정렬하고자 할 때, 다음과 같이 작성할 수 있습니다.
SELECT Country, PostalCode FROM Customers
ORDER BY Country ASC;
결과
위 쿼리는 `Country` 열을 기준으로 데이터를 오름차순으로 정렬합니다.
다중 열을 기준으로 정렬
`ORDER BY` 절은 하나 이상의 열을 기준으로 데이터를 정렬할 수 있습니다. 여러 열을 기준으로 정렬할 때는, 첫 번째 열을 기준으로 먼저 정렬한 후, 동일한 값이 있을 경우 두 번째 열을 기준으로 정렬합니다.
예제
`Customers` 테이블에서 'Country'를 기준으로 오름차순 정렬하고, 동일한 ` Country ` 내에서는 `PostalCode`를 기준으로 내림차순 정렬하고자 할 때:
SELECT Country, PostalCode
FROM Customers
ORDER BY Country ASC, PostalCode DESC;
결과
이 쿼리는 Country를 기준으로 먼저 오름차순으로 정렬하고, 같은 Country 내에서는 PostalCode를 기준으로 내림차순으로 정렬합니다.
서브쿼리와 ORDER BY
`ORDER BY`는 서브쿼리에서도 사용할 수 있습니다. 서브쿼리 내에서 정렬한 결과를 바깥 쿼리에서 다시 정렬할 수 있습니다.
예제
다음 예제는 서브쿼리 내에서 먼저 `age`를 기준으로 내림차순으로 정렬한 후, 바깥 쿼리에서 `name`을 기준으로 오름차순으로 정렬합니다.
SELECT Country, PostalCode
FROM (
SELECT Country, PostalCode
FROM Customers
ORDER BY PostalCode DESC
) AS subquery
ORDER BY Country ASC;
결과
결론
SQL의 `ORDER BY` 절을 사용하면 데이터를 원하는 순서대로 정렬할 수 있습니다. 기본적인 오름차순, 내림차순 정렬부터 다중 열을 이용한 정렬, 서브쿼리를 이용해서 데이터를 효율적으로 관리하고 조회해 보세요.
'Programming' 카테고리의 다른 글
SQL에서 상위 비율 데이터 확인하기 (1) | 2024.05.31 |
---|---|
SQL에서 중복을 제거하고 데이터를 조회 (0) | 2024.05.31 |
Next.js 개발환경 구축하기 (0) | 2024.05.28 |
Next.js 란 무엇인가요? (0) | 2024.05.28 |
MySQL 데이터베이스 기본 명령어 (0) | 2024.05.17 |