드디어 긴 항해의 시작이다
웹개발 강의를 들으면서 자신감이 조금 떨어진건 사실이다
과연 내가 이 항해를 끝낼 수 있을까... 하지만 해보려한다
늦은 나이의 도전이지만 힘내보길 바라며 1일차 일지를 써본다
오늘은 엑셀보다 쉬운 SQL에 대해 공부하였다
SQL 중 저장된 데이터에서 필요한 것을 불러오는 것에 대해 공부하였다
테이블 데이터가 담겨져 있는 표
필드 테이블안에 있는 목차
테이블 목록 보는 법 show tables 실행->SQL문 실행
선택하기 select () from ()
* 모든필드
조건 WHERE payment_method ='kakaopay' (조건 부분 ‘ ’=문자열이라는 뜻)
WHERE point >=5000 (5000점 이상)
WHERE course_title ='웹개발 종합반' and payment_method ='card'(앱개발 종합반 이면서, 결제수단 카드인 것)
같지 않다 !=
WHERE course_title !='웹개발 종합반' (웹개발 종합반 아닌것만 나옴)
범위 between
WHERE created_at BETWEEN '2020-07-13' and '2020-07-15' (20년 7월 13일부터 20년 7월 15일꺼 까지 나옴 다만 숫자는 ‘ ’ 안함)
포함 in
WHERE week in (1,3) (위크가 1, 3일인 것만 나오게)
패턴 like
WHERE email like '%daum.net' (daum.net 인것만 나오게, %는 앞에 뭐가 있든 중간에 뭐가있든 상관없다는 뜻)
WHERE email like 'a%t' (a로 시작해서 t로 끝나는 것)
limit 숫자 SELECT * FROM orders
WHERE payment_method ='kakaopay'
LIMIT 5 (원하는 개수의 줄만 보기)
DISTINCT SELECT DISTINCT(payment_method) from orders (중복되는거 제외하고 가지고오기)
COUNT 숫자세기 SELECT COUNT(*) from orders (orders에 있는 숫자)
WHERE payment_method ='KAKAOPAY' (kakaopay가 있는 숫자)
DISTINCT 와 COUNT 함께 SELECT count(DISTINCT(name)) FROM users (중복되는 성을 지우고 그 성이 몇 개인지)
GROUP BY 동일한 범주의 데이터를 묶어줌
서로 다른 성이 몇 개인지 보여줌 SELECT NAME, COUNT(*) FROM users
GROUP BY name (name으로 묶은 걸 count로 세줌)
min 최소값 SELECT week, min(likes) FROM checkins
group by week (week 중 likes의 최소값)
max 최대값 SELECT week, max(likes) FROM checkins
group by week (week 중 likes의 최대값)
avg 평균값 SELECT week, avg(likes) FROM checkins
group by week (week 중 likes의 평균값)
SELECT week, round(avg(likes),2) FROM checkins
group by week (소수점 없애기 round 숫자는 소수점 자리수)
sum 합계 SELECT week, sum(likes) FROM checkins
group by week (likes 합계)
ORDER BY 깔끔하게 데이터 정리
서로 다른 성이 몇 개인지 보여줌 SELECT name, count(*) FROM users
group by name
order by COUNT(*) or asc (오름차순 정렬)
order by COUNT(*) desc (내림차순 정렬)
웹개발 종합반의 결제수단별 주문건수 세어보기 SELECT payment_method, COUNT(*) from orders
WHERE course_title ='웹개발 종합반'
group by payment_method
order by COUNT(*)
gmail을 사용하는 성씨별 회원수 세어보기 SELECT name, COUNT(*) from users
WHERE email like '%gmail.com'
group by name
course_id 별 오늘의 다짐에 달린 평균 like 개수 구하기 SELECT course_id, avg(likes) from checkins
group by course_id
Alias 별칭
SELECT * FROM orders o order o는 o 라고 부르겠다
WHERE o.course_title ='앱개발 종합반' o.course_title 은 order o 에 있는 o.course_title라는 의미
암기력이 좋지 않음으로 공부를 하면서 필요한 부분들을 정리해두었다
과연 이것이 나중에 도움이 될지는 모르겠지만.. 그래도 참고 할수 있을 것이라 생각한다
시작이 반이라고 남은 과정도 힘내보자!
'항해99' 카테고리의 다른 글
23.08.09 항해 99 16기 개강준비과정 웹미니 프로젝트 1일차 (0) | 2023.08.10 |
---|---|
23.08.08 항해 99 16기 개강준비과정 5일차 입학 시험 (0) | 2023.08.08 |
23.08.07 항해 99 16기 개강준비과정 4일차 배포 연습 (0) | 2023.08.07 |
23.08.05 항해 99 16기 개강준비과정 3일차 엑셀보다 쉬운 SQL 문제 풀기 (0) | 2023.08.05 |
23.08.04 항해 99 16기 개강준비과정 2일차 엑셀보다 쉬운 SQL 항해 3, 4주차 (0) | 2023.08.04 |