배운 것
- 2주차 강의와 3주차 강의를 한 번에 다 들었다.
-> 일정 상 꾸역꾸역 들었지만 내일은 데일리 루틴 시간 계획해서 조금 덜 부담되게 공부해야겠다. - 2주차 강의에서는 column 간 사칙연산, 합계, 평균, 개수 세기, 최대값과 최소값 찾기, 범주를 지정하는 Group by 와 Query 결과를 보기 좋게 정렬하는 Order by를 배웠다
select * from * where * group by * order by * #asc or desc
- Query를 쓸 때는 항상 위의 순서대로 작성해야 한다!
- 3주차 강의에서는 2주차 강의에서 배웠던 내용의 복습에 더해, 데이터를 가공하고(REPLACE, SUBSTRING, CONCAT), 여러 가지 조건을 부여하는 구문(IF, CASE)에 대해 학습했다.
- REPLACE : 바꿀 컬럼 내의 특정한 값을 전부 변경한다.
replace(바꿀 컬럼, 현재 값, 바꿀 값)
- SUBSTRING (또는 SUBSTR) : 특정 컬러 내의 시작 단어 위치부터 원하는 갯수의 글자를 출력한다.
substr(조회 할 컬럼, 시작 위치, 글자 수)
- CONCAT : 글자를 합쳐준다. 한글, 영어, 숫자, 기타 특수문자 뿐 아니라 컬럼까지 합칠 수 있다. 단, 컬럼이 아닐 경우에는 ''' 작은 따옴표 사이에 넣어서 입력해야 한다.
-> cf. 엑셀에서 CONCATENATE 함수와 기능이 유사하다. 맨날 타이핑하다가 오타나는 그 함수... - IF : 조건에 따라 값이 조건을 충족할 때(참일 때)와 충족하지 못할 때(거짓일 때) 값을 다르게 적용하는 경우에 사용한다.
if(조건, 조건을 충족할 때, 조건을 충족하지 못할 때)
- CASE : IF와 달리, 조건을 여러 개 지정하고 싶을 때 사용한다.
-> CASE는 시작할 때 한 번만 입력하고, 조건마다 WHEN ~ THEN 을 입력하여 구분
-> CASE를 끝낼 때는 end를 입력한다.SELECT case when cuisine_type='Korean' THEN '한식' when cuisine_type in ('Japanese','Chinese') then '아시아' else '기타' end "음식타입", cuisine_type from food_orders
- REPLACE : 바꿀 컬럼 내의 특정한 값을 전부 변경한다.
- cf. 코테하면서 안 것 : Query 작성 할 때 '!(느낌표)' 를 붙이면 "같지 않음" 이라는 뜻이 된다.
-> 위와 같이 작성하면 Intake_condition이 Aged 가 아닌 행을 선택하게 된다.WHERE INTAKE_CONDITION!='Aged'
-> 해당 문제는 'not in ('Aged')' 사용해서 풀긴 했지만 이런 방법도 있어서 같이 알아두기.
한 것
- SQL 2주차, 3주차 강의 수강
- SQL 코딩테스트 4문제 성공
- 1주차 팀과제 - 채용공고, JD 정리
- TIL 작성
느낀 것, Etc
- TIL 쓰다가 더 예쁘게 쓰고 싶어서(?) 마크다운 쓰는 법을 찾아봤다.
티스토리 마크다운 가이드
마크다운 작성 팁_프로그래머스 - 코딩테스트 하다가 막히는 문제도 생겼고, 틀리기도 했다. 왜 틀리나 했더니 문제를 제대로 안 읽는 바람에 조건절 하나를 빼먹어서...
- 첫날에 데이터분석가 현직자 인터뷰 강좌 링크를 받아서 들었었는데, 짧게 영타 빠른 게 중요하다고 스치듯이 얘기하셨었다. 그리고 그 말을 정말 공감하는 중... 한글 타자는 그래도 자판으로 글을 써버릇 해서 빠른 편인데, 영타는 아직 많이 느리다. 타자연습을 해야할까?
'내일배움캠프_데이터분석_2기 > TIL' 카테고리의 다른 글
[TIL] camp_day1_240415 (0) | 2024.04.15 |
---|---|
[TIL] precamp_day8_240327 (0) | 2024.03.27 |
[TIL] precamp_day7 (0) | 2024.03.26 |
[TIL] precamp_day4 (0) | 2024.03.21 |
[TIL] precamp_day2 (1) | 2024.03.19 |