오름차순 정렬
1. 성씨별 사람이 많은 순으로 데이터 정렬하기
group by를 사용해서 같은 name끼리 묶고, 각 범주의 개수를 세도록 하면 다음과 같은 결과를 얻을 수 있습니다.
select name, count(*) from users
group by name
이 데이터를 정렬하기 위해서는 order by와 어떤 필드를 사용해서 정렬할지를 작성해주면 됩니다.
범주의 개수 count(*)을 사용해서 오름차순 정렬하도록 하겠습니다.
select name, count(*) from users
group by name
order by count(*)
내림차순 정렬
내림차순은 desc만 붙여주면 됩니다.
select name, count(*) from users
group by name
order by count(*) desc
좋아요가 많은 순서대로 데이터 정렬하기
select * from checkins
order by likes desc
Where절과 Order by 사용하기
1. 웹개발 종합반의 결졔수단별 주문건수를 세어 오름차순 정렬하기
실행되는 순서는 다음과 같습니다.
orders 테이블 > course_title이 '웹개발 종합반'인 데이터 > group by 를 통해 같은 payment_method 끼리 묶음 > select를 통해 payment_method 당 몇 개의 데이터가 있는지 세기 > order by를 통해 오름차순 정렬
select payment_method, count(*) from orders
where course_title = '웹개발 종합반'
group by payment_method
order by count(*)
2. Gmail을 사용하는 성씨별 회원수를 세어 내림차순 정렬하기
select name, count(*) from users
where email like '%gmail.com'
group by name
order by count(*) desc
문자열 정렬하기
한글, 알파벳 모두 정렬이 가능합니다.
select * from users
order by email
select * from users
order by name desc
728x90
'DB > SQL' 카테고리의 다른 글
[프로그래머스/SQL] 3월에 태어난 여성 회원 목록 출력하기 (0) | 2023.03.21 |
---|---|
[SQL] DATE_FORMAT 날짜/시간 포맷 지정하기 (0) | 2023.03.21 |
[DB/SQL] Group by를 통한 범주의 개수, 최소/최대값, 평균값, 합계 구하기 (0) | 2023.03.20 |
[DB/SQL] 데이터 개수 제한, 중복 제거, 개수 세기 (Limit, Distinct, Count) (0) | 2023.03.20 |
[DB/SQL] Select문, Where절을 사용해서 데이터 가져오기 (0) | 2023.03.20 |