✍️ 스파르타코딩클럽 SQL (2주차)

On a regular basis·2021년 8월 29일
0

Spartacoding(SQL)

목록 보기
2/4
post-thumbnail

✏️ 혼자 연습하려고 기록하는 블로깅.. ^^

🐼 몰랐던 부분 & 헷갈린 부분만 정리

  • 의미있는 '정보'를 구해보장!
    -> 가장 많은 Like를 받은 사람의 이름, 전체 신청자수, 평균 연령 등등.
    -> category로 묶는 연습! (group by)
    -> 깔끔하게 데이터를 정렬하는 연습! (order by)

1)

-> users를 group by name으로 묶어줘
-> users으로 묶은 것과 묶은 것 당 count를 하나씩 해서 보여줘

2)

-> checkins를 group by week로 묶고
-> 묶은 것과 묶은 것 당 count를 해서 보여줘

3)

-> 주차별 '오늘의 다짐'의 좋아요 최소값을 구함
-> '~~ 별'이면 group by!!
-> min(필드명)

4)

-> roung(avg(필드명), (반올림될 숫자)) -> 평균을 구하는데 둘째자리까지 반올림해서 보여줘

5)

-> order by 정렬은 묶을거 다 묶고 보여줄거 다 보여주고 한 다음 가장 마지막에 정렬!
-> name으로 묶고 count로 출력, 그리고 정렬은 마지막
-> 아무것도 안적으면 asc(오름차순), 내림차순하려면 desc 써주기

  • order by는 무조건 group by랑 같이 나와야하는 앤가? NO!!

    -> 그냥 요렇게도 가능!

6) where랑 group by, order by같이 사용하기

7) order by
-> 숫자, 문자, 시간 다 됨!

8) 별칭(alias)
-> 쿼리가 길어질 때 헷갈릴 수 있으니까 별칭을 붙여주기~~
1)

-> orders 테이블의 별명을 'o'로 지정하고, o.course_title로 명명 해주면 orders 테이블의 course_title이라고 불러낼 수 있슴!
2)

-> count() as @@@ : @@@으로 count()의 별칭을 붙여줄 수도 있음!

🌱 quiz1

select payment_method, count(*) from orders
where course_title = '앱개발 종합반'
group by payment_method 

🌱 quiz2

select name, count(*) from users;
where email like '%gmail.com'
group by name

-> 에러뜨네^^ 샘이랑 똑같은데 왜 에러뜨는지 모르겠슴...👊

🌱 quiz3

select course_id, round(avg(likes),2) from checkins
group by course_id

🌱 숙제!

select payment_method, count(*) from orders
where email like '%naver.com' and course_title = '앱개발 종합반'
group by payment_method

🌱 2주차 완료 !
넘넘 재밌땅!!!!! group by, order by 배우고 별명까지 배우고~~~ 더더 연습해서 DATABASE 마스터가 될꺼야.....👊 SQL 요정이 되어보장...!

profile
개발 기록

0개의 댓글