SQL 관련하여 오늘 학습한 내용을 정리했습니다.
데이터를 정렬하면 특정 컬럼의 대략적인 특징을 유추할 수도 있고, 이상값을 찾기도 쉬워집니다. 오름차순과 내림차순, 같은 값일 때 정렬 방법 등 SQL에서 데이터를 정렬하는 방법을 정리했습니다.
일반적인 정렬(오름차순/내림차순)
- SQL에서 정렬은 ORDER BY를 사용합니다.
SELECT * FROM user
ORDER BY age;
- user 테이블을 age에 따라 정렬합니다. 오름차순, 내림차순을 정하지 않으면 기본적으로 오름차순으로 정렬됩니다.
- 내림차순으로 정렬하고 싶을 땐 아래와 같이 추가적인 조건을 달아줍니다.
SELECT * FROM user
ORDER BY age DESC;
조건문과 함께 사용
- 조건문과 함께 사용할 때는 조건문을 먼저 써야합니다.
SELECT * FROM user
WHERE gender = 'male'
ORDER BY age DESC;
정렬 조건을 추가하는 방법
- 나이를 기준으로 정렬할 때 만약 같은 나이라면 어떻게 정렬될까요?
- 이런 상황에선 primary key를 기준으로 정렬됩니다. PK가 앞서는 데이터가 우선적으로 정렬됩니다.
- 정렬 조건을 추가해서 첫 번째 조건이 같은 상황에 대처하고 싶다면 아래와 같이 조건을 추가합니다.
SELECT * FROM user
WHERE gender = 'male'
ORDER BY age DESC, name ASC;
- 콤마(,)를 써서 다음 조건을 추가하면 됩니다. 나이로 우선 정렬한 뒤 같은 나이에 대해서는 이름을 비교하여 정렬합니다.