sql 문제 2번째
첫번째 시도 :

이거는 내일,..? 시간 날 때 다시 풀어보고 다시 올리겠다.
오늘은 조를 또 바꿨다. 조원들이랑 친해지면~ 바꾸고, 편안해지고 친해지면~ 바꾸고. 예스. 이게 바로 스파르타 코딩클럽 스타일
암튼 이번에는 8조가 되었다. 안동에 사시는 분 계셔서 놀랐다. 산불때문에 연기 엄청나고 피해를 직접 가까이서 듣게 되어서 놀랐다. 연기때문에 한동안 뿌얬다고 하셨다. 이제는 산불이 진화가 되었다고 해서 다행이다 싶었다. 이게 좋은점이 전국에 있는 사람들과 소통할 수 있어서 좋은 것 같다.
그리고 나이를 이번 조에서는 밝혔는데, 나랑 동갑인 분도 있고, 나보다 나이 많은 분도 있고, 어린분도 계셔서 신기하기도 하고, 서로 어떻게 하게 되었는지 자기소개 하니까 훨씬 좋았다. 다음조에서도 자기소개 하자고 해야겠다.
사실 이번 sql이랑 파이선 과제는 내 힘으로 하나도 풀지 못해서 오늘 약간 공부를 어떻게 해야할지 길을 잃었는데,(멘탈도 좀 나감) 다시 다잡고 기초를 탄탄히 해야겠다는 방향성이 잡혀서 다시 sql 기본으로 돌아갔다.
오늘 공부 했던 sql 기초편
- limit 숫자: 숫자에 해당하는 개수만 보겠다. 라는 뜻. 쿼리 맨 마지막에 위치한다.
- group by: 테이블을 전체 데이터가 아닌, 특정 항목들에 대한 합계나 갯수, 평균 등을 확인할 수 있게 하는 문법이다. 라이브 세션을 들었을 때도, 개념을 익힐 때에도 group by에 대한 정확한 개념정리 및 이해가 되지 않아서 모호하게 알았던 문법인데, 오늘 기초강의를 들으면서 다시 정리하니까 이해가 확실하게 된다. 그리고 오늘 알게 된 것은 중복을 제거할 때도 사용이 가능하다는 것이다.
예를 들어서
select year
from apt_list
group by year 이렇게 쿼리를 하나만 쓰게 되면(하나만 써도 되는지 오늘 처음 알았다): 각각 다른년도(중복제거)가 나오게 된다. 만약 year컬럼에 동일한 년도 데이터가 여러개 있을 경우에 위와 같은 단일 컬럼에 대한 group by 절을 사용하게 될 경우, year컬럼의 년도 데이터들 중 동일 년도 데이터에 대한 중복값이 제거된다는 소리이다. 년도가 하나씩만 표시된다는 소리이다.
- where절은 테이블의 모든 데이터가 아닌 (조건에 맞는)일부데이터만 보고자 할 때 사용하는문법이다.
- 데이터 타입이 문자 종류일 때는 따옴표(')를 사용한다. 숫자일 때는 따옴표 미사용.(중요⭐)문자 타입은 string으로 표시되고, 숫자타입은 float(소숫점 자리까지 표시할 때. 실수),int(정수)로 표시된다.
- case when문법: 데이터 값이 특정한 조건일 때 다르게 표현해주는 역할 등을 하는 문법이다. ->그루핑을 할 때 많이 쓰인다.
사용 문법:case when 조건 then 표현내용. 끝낼때는 end 꼭 써줘야 함.
- like/not like 구문: 특정 단어가 포함된 조건을 보고 싶을 때/특정단어가 포함되지 않는 조건을 사용하고 싶을 때 활용됨. 이 구문은 where절, and 다음에, case when 구문에서도 함께 사용이 가능하다.
- 서브쿼리는 보통 산식(숫자, 문자, 기호를 써서 이들 사이의 수학적 관계를 나타낸 것)이 들어간 컬럼을 재활용(내가 가공한 쿼리를 재사용)하고자 하거나 할 때 사용됨.
- union과 union all의 차이: union은 중복값을 제거한다. union all은 중복값이 있어도 다 return함.(지금 파이선의 개념이 나와버림 암튼)
사용하는 위치는 쿼리와 쿼리 사이에 위치하면 됨.
오늘은 다시 기초로 돌아가서 sql기초 개념을 다시 잡을 수 있어서 좋았고, 복습한다는 개념+이해가 더 잘 되게 설명해주셔서 더 좋았다.-디노자유아빠 님 영상 추천. 다음 개념도 더 잘 잡고 가야겠다. 컴퓨터적 사고를 하려면 그 '대용량 데이터베이스 솔루션' 책 읽으면서 옵티마이저에 대해서 이해하라고 하는데-옵티마이저의 개념을 알고 옵티마이저가 어떻게 일하는지에 대한 개념을 안다고 하면 dbms가 어떤 dbms를 쓰던 데이터가 어떻게 효율적으로 처리되는지 알 수 있기 때문에 옵티마이저에 대한 이해를. 그 개념에 대한 공부를 할 수 있다면 그걸 먼저 하면 좋을 것 같다고 어떤 db전문가께서 말씀하셨다.. 책이 엄청 두꺼운데 저걸 도서관 가서 빌려와야 할려나 싶다. 근데 댓글에는 저렇게 하면 안된다고(수학 배울 때 미적분부터 이해하라는 뜻이라서 저렇게 하면 어렵다고,,) 써있기도 하고.. 흠.. 튜터님께 가서 물어봐야 하려나..?
사진 출처_httpsblog.naver.comilove10125223728317315