Disclaimer
아래 내용은 코드잇 강의 'SQL로 하는 데이터 분석'을 수강하며 간단하게 정리한 내용입니다.
순서대로 듣는 것이 아닌 저에게 필요한 부분만 골라 듣습니다. (SQL기본 조회 방법은 생략합니다)
데이터베이스 기본 개념
- 데이터베이스 : 일정한 체계 속에 저장된 데이터의 집합
- DBMS(=DataBase Management System) : 데이터베이스 관리 시스템 (MySQL, Oracle 등) / 데이터베이스 구축하는 것도 DBMS를 선택하는 것부터 시작하게 된다.
- SQL(Structured Query Language) : DBMS에 명령을 내리기 위해 사용하는 언어
- primary key : 테이블에서 하나의 row를 고유하게 식별할 수 있도록 해주는 column
- natural key (primary key의 종류-1) : 어떤 개체가 가지고 있는 속성을 나타내는 column이 primary key가 되었을 때 지칭하는 말
- surrogate key (primary key의 종류-2) : primary key로 사용하기 위해 인위적으로 생성한 column
- not null(NN) : 값이 존재하지 않는 상태(null)이 아니다. / 숫자 0과 다름 / 빈 문자열('')과 다름
데이터 조회로 기본 다지기
- 이스케이핑(escaping) : 어떤 문자가 부여된 특정 의미, 기능으로 해석되는 것이 아니라 그냥 단순한 문자 하나로 해석하는 것
- case-intensity(ci) : 문자열이 동일한지 확인할 때, 대소문자를 구별하지 않겠다는 뜻
- 항상 중요한 건 SQL 실행 순서~_~
- limit m,n : m번째 row부터n개 뽑음 (단, m은 0부터 시작함)
수강후기
아래 부분은 다 아는 내용이라 생략 ~_~... 아는지 확인하기 위해 잠깐 잠깐 들었다.
사실 기초 이상으로 알고 있는데 실전에서 써먹기 위해 배워왔던 거라서 기본 개념을 훑어보고 싶어서 수강했다.
그리고 MySQL Workbench에서 쿼리를 날리기보다는 회사에서 세팅해둔 환경에서 사용하게 되는데, 그런 환경과 잘 맞지 않는 강의라 다소 아쉬웠다.
그리고 create를 꽤나 비중있게 다루는데 음... 대부분의 회사에서 비개발자는 create를 사용할 수 없을텐데? 라는 생각 뿐...
전 회사에서는 view도 마찬가지로 사용이 안 되었었다. 대신 with를 사용하긴 했음. (with는 강의에서 오히려 안 다루는듯...)
그래서 SQL을 아예 모르는 사람에게는 추천, SQL을 어느정도 아는 사람에게는 비추천.
(중간중간 강의 생략하고 과제나 퀴즈는 풀어서 제대로 알고있는지 확인하고 싶었는데, 강의를 듣지 않으면 불가능한 점이 아쉬웠다)
SQL을 아예 모르는 사람에게 추천하는 이유는, 코드잇에서는 쿼리할 수 있는 환경이 지원된다.
(그리고 목차가 아주 좋다고 생각함. 원래 들을 생각 없었는데 목차보고 오 들어볼까? 하고 생각이 바뀌어서 듣게되었다.)
실 데이터를 만질 수 없는 환경이라면, SQL을 독학할 때 무엇보다 골치아픈 건 그럴싸한 데이터 세팅이 매우 어렵다는 점이다.
근데 이걸 코드잇에서 제공해주고 심지어 예약어도 자동완성해줌. (애초에 나의 경우 환경세팅하기 골치아파서 코드잇을 결제했기 때문에..) 이 점이 코드잇의 가장 큰 장점인 것 같다.
하지만 코드잇은 유료이기 때문에... 돈 들여서 공부하고 싶지 않다면 아래 사이트를 추천한다. (for 왕초보)
저번 회사동료들과 스터디했었음. join을 할 줄 모르던 동료가 join과 subquery를 연습하며 매우 즐거워했었다. (아마도?)
UI가 수려하지 않고(매우 못생겼고) 영어이지만 무료 사이트로 데이터 조회 연습을 갈망한다면 좋은 사이트이다.
https://sqlzoo.net/wiki/SQL_Tutorial
근데 주머니 사정이 넉넉하다면 코드잇이 낫다! 왜냐면 아름답고 한국어이고 환경세팅 신경썼고 기본적인 순서대로 배우고 웬만한 분석에 필요한 만큼은 다 배울 수 있다! 내가 어느정도... 사실 기본 개념 제외하고 목차 전체를 알고있기 때문에 불만족한 것이지 select from where만 알고, join이나 subquery 잘 모르는 사람정도도 도움 꽤나 받을 수 있을 것 같다.
'일하면서 필요한 공부를 해보자 > 데이터 공부를 해보자' 카테고리의 다른 글
[비개발자SQL] SQLD 자격증 합격 후기 (비추천합니다 / ChatGPT 활용) (1) | 2023.04.07 |
---|---|
[GA4] 구글 애널리틱스에 입문해보기로 결심... (1) | 2022.09.04 |
[비개발자SQL] 효율적인 쿼리 짜기 : SARGable Query란? ( non-sargable query, SQL) (0) | 2022.08.08 |