25.2.24 TIL

황효정·2025년 2월 24일

데이터 분석

목록 보기
5/88
post-thumbnail

제목 : [캠프 6일차] + 오늘의 학습 키워드

  1. 오늘 학습 키워드
    ★집계함수: count,max,min,sum,avg
    테이블의 정보를 요약해서 보고 싶을 때 집계함수 사용. 전체 데이터 또는 특정 컬럼 기준으로 사용 가능. 집계함수는 select문에서 사용됨.

★sql그룹화: group by&having.
집계함수에 그룹(기준)이 더해진 개념. 특정 컬럼을 기준으로 데이터를 요약해서 비교하고 싶을 때 주로 사용함.
select 기준컬럼, 집계함수(조건컬럼을 기준으로 여러개의 집계함수 동시사용 가능)
from 테이블명
where 조건 #(생략가능)
group by 기준컬럼

★having!=where
having절은 group by에 의한 결과를 필터링 할 때 사용된다. 위치도 group by 절 뒤에 위치함. where은 group by 하기 전의 데이터를 기준으로 필터링, having은 group by 한 후의 결과값을 기준으로 데이터를 필터링한다.

/작동순서: FROM → ON → JOIN → WHERE → GROUP BY → HAVING → SELECT → DISTINCT → ORDER BY/

select 기준컬럼, 집계함수(조건컬럼을 기준으로 여러개의 집계함수 동시사용 가능)
from 테이블명
where 조건 #(생략가능)
group by 기준컬럼
having 조건식
;

★서브 쿼리
서브쿼리 실행(안쪽에 위치한 쿼리)->메인쿼리(바깥쪽에 위치한 쿼리)실행. 쿼리의 가장 안쪽부터, 바깥쪽 쿼리를 실행하며 최종 결과값을 반환한다.

★서브 쿼리 종류
-1- 중첩(일반)서브쿼리: where절에서 사용. 서브쿼리의 결과에 따라 달라지는 조건절
● 중첩 서브쿼리 실습
● 문동은의 나이보다 나이가 많은 모든 데이터 반환하기
select *
from basic.theglory
where 나이 > (select 나이 from basic.theglory where 이름='문동은')
;
-2- 스칼라 서브쿼리: select 절에서 사용, 하나의 컬럼처럼 사용, 스칼라 서브쿼리 이용을 위해서는 서로다른 테이블이 필요함.
-3- 인라인 뷰(가장 많이 사용): from절에서 사용, 하나의 테이블처럼 사용, as구문을 사용하여 반드시 명칭을 기재해야 함, 간단해 보이지만 향후 join및 union시 가장 유용하게 사용됨.

인라인 뷰 서브쿼리 실습

나이가 33세 이상인 모든 데이터 중 나이와 직업 컬럼 반환하기

select x.나이, x.직업
from( select *
from basic.theglory
where 나이>=33
)as x

★ substr: 특정한 문자를 뽑아주는 구문
★ concat: 원하는 데이터들을 모두 붙여주는 것
2. 오늘 학습 한 내용을 나만의 언어로 정리하기
오늘 라이브 세션에서 그룹화 들으면서 사실 이해가 잘 안되었는데, 지금 정리하면서보니 이해가 된다.
그룹화라는 것은 결국은: 어떤 컬럼을 기준으로 뽑고 싶은 데이터를 볼 수 있는 것이다. 어떤 컬럼 기준으로 이거,저거,요거 보고싶다 했을 때 그 기준컬럼에 대한 이거,저거,요거 값을 가져오는 것.

서브쿼리 종류는 3가지가 있고, select문, from문, where문에서 사용이 가능하다.

  1. 학습하며 겪었던 문제점 & 에러
  • 문제&에러에 대한 정의
    디비버가 에러가 남. case when 구문 쓸려했는데 에러나서 결국 사용 못함.
  • 내가 한 시도
    디버깅 시도함.
  • 해결 방법
    모르겠음.
  • 새롭게 알게 된 점
    case when은 select다음에 써야함.(위치)
  • 이 문제&에러를 다시 만나게 되었다면?
    다시 해보기!
  1. 내일 학습 할 것은 무엇인지
    3-3강의 수강하기, 미리캔버스 템플릿 찾아보기, 코드카타 풀기, ppt만들기, 아티클 읽고 작성, 팀원들과 나누기, 과제 문제 풀기

  2. 오늘의 일기
    오늘은 하루종일 팀 프로젝트 상의하고 역할 정하고 조사하면서 시간을 보냈다. 발제하고, 스크럼 쓰고, 강의 듣고, 상의하고, 조사하고 또 나누고 또 조사하고... 몸은 조금씩 나아지고 있는듯하지만 아직도 감기ing이다. 이번 감기는 아주 독하다. 잘 낫지를 않는다. 내 몸이 아주 고생이다.
    그래도 오늘 자료 정해서 sql에 자료 저장하는것을 혼자서 성공해서 아주 뿌듯하다. 저번에는 혼자 저장도 못해서 진땀을 뺐는데 두번째라고 혼자서 이제는 할 수 있다는게 아직도 어리둥절하면서도 참 다행스럽다.
    그리고 그 insurance table을 가지고(우리팀은 우여곡절 끝에 insurance로 정함)그 안에 있는 데이터들로 내가 직접 추출해보고 sql돌려보면서 데이터들을 조사했는데, 아주 재미졌다. 스스로 가설을 설정해보고 찾아가는 과정이 재밌게 느껴짐. 뿌듯하면서도 한편으로는 시간이 눈깜빡하니 지나가서 아쉽기도 하다. 과제는 오늘 비록 못했지만 내일 다시 해봐야지 화이팅!!고생했다 나자신 진짜 고생이야!!!

#내일배움캠프 #TIL

profile
청지기

0개의 댓글