티스토리 뷰
*강의목표*
- 데이터 가공 및 분석을 위한 SQL 쿼리를 작성할 수 있다.
- 다른 사람이 작성한 SQL문을 분석하고 이해하며 수정할 수 있다.
- SQL 코딩테스트에 익숙해진다.
1. SQL(Structured Query Language)?
: 스토리지 언어의 표준.
MySQL, MsSQL, Oracle, Postgres 등의 DB를 사용하여 프로젝트를 하려면 SQL을 다룰 수 있어야 함.
2. SQL로 할 수 있는 것.
- SQL문을 사용하여 데이터베이스에서 정보를 저장, 업데이트, 제거 및 검색할 수 있다.
- 데이터베이스 성능을 유지 관리하고 최적화하는데 SQL을 사용할 수 있다.
3. SQL의 종류
- DDL
- DCL
- DML
DDL (Data Definition Language) |
데이터베이스 구조를 정의하는데 사용. 인덱스의 생성, 수정 삭제 등의 작업을 함. |
DCL (Data Control Language) |
데이터베이스에 대한 접근 권한을 제어하는데 사용 권한을 부여, 취소하는 GRANT, REVOKE 명령이 있음. |
DML (Data Manipulation Language) |
데이터를 조작하는데 사용. 데이터를 삽입, 수정, 삭제하는 INSERT, UPDATE, DELETE 명령이 있음. |
**SQL을 조회하는 것에 집중해서 진도를 나갈 예정.
*실습환경 세팅하기*
1. google BigQuery 검색 > 가입> 우측 상단의 '콘솔' > BigQuery에서 쿼리 실행
2. Analytics Hub > thelook_ecommerce 설치 > SQL 작업공간에서 작업 시작
* 오늘의 SQL 명령어
명령어 | 설명 | 예시 | 비고 | ||
select | 조회 명령어(무엇을) | *을 사용해서 모든 내용 조회 가능 |
|||
from | 경로 명령어(어디서) | ||||
as | 이름 변경(별칭짓기) | ||||
limit | 조회할 자료 개수 제한 | ![]() |
모든 항목의 10개의 행 출력 ※ 코드의 제일 끝에 작성. |
||
distinct | 중복 데이터 제거 | ![]() |
콤마(,)로 여러 항목을 한 번에 실행가능 | ||
count() | 해당항목 레코드의 수 반환 | ![]() |
전체 레코드의 개수이기 때문에 중복을 제거하려면 괄호 안에 distinct를 추가. *null값은 빼고 count 해줌. |
*SQL 연산자
명령어 | 설명 | 예시 | 비고 | ||
where | 조건에 맞는 자료 출력 | ![]() ![]() ![]() |
|||
비교연산자 | = > < >= <= != , <> |
※ true = 1, false = 0 and : 곱하기, 교집합 or : 더하기, 합집합 not ※ 괄호 먼저 계산함. |
|||
SQL 연산자 |
between | ![]() |
|||
in | ![]() |
||||
like | ![]() ![]() |
1) '%'의 위치에 따라 앞, 중간, 뒤 어디에 조건을 걸지 정할 수 있음. (a% , %a, %a%) 2) 글자 수에 조건을 걸 때에는 '%' 대신 언더바(_)를 사용할 수 있음. |
|||
IS NULL IS NOT NULL |
![]() |
공백값 or 공백 아닌 값 찾기 |
* SQL 집계함수
명령어 | 설명 | 예시 | 비고 | ||
count() | 해당항목 레코드의 수 반환 | ![]() |
※ 전체 레코드의 개수이기 때문에 중복을 제거하려면 괄호 안에 distinct를 추가. |
||
집계함수 | max 최댓값 | ![]() |
|||
min 최솟값 | |||||
sum 합 | |||||
avg 평균 | |||||
variance 분산 | |||||
stddev 표준편차 | |||||
group by | 특정 항목을 기준으로 그룹화하여 조회 |
![]() |
※ select에서 해당 항목 선택 필수. |
* 참고사이트
SQooL
SQL SELECT GROUP BY ORDER BY UPDATE INSERT INTO WHERE DELETE INNER JOIN INSERT INTO SELECT MORE --- SQL 문 선택 --- LIMIT AND OR NOT IS NULL IS NOT NULL IN LIKE BETWEEN COUNT SUM MIN MAX AVG AS HAVING CASE DISTINCT LEFT JOIN RIGHT JOIN FULL OUTER JOIN U
sqlschool.co.kr
어휘 구조와 구문 | BigQuery | Google Cloud
Google 표준 SQL 문은 일련의 토큰으로 구성됩니다. 토큰에는 식별자, 따옴표로 묶인 식별자, 리터럴, 키워드, 연산자, 특수문자 등이 포함됩니다. 공백(예: 스페이스, 탭, 줄바꿈 등) 또는 의견으로
cloud.google.com
코딩테스트 연습 | 프로그래머스 스쿨
개발자 취업의 필수 관문 코딩테스트를 철저하게 연습하고 대비할 수 있는 문제를 총망라! 프로그래머스에서 선발한 문제로 유형을 파악하고 실력을 업그레이드해 보세요!
school.programmers.co.kr
*오늘의 후기
: 파이썬으로 데이터 수집을 하다 SQL을 배우니 숨통이 트이는 느낌이었다.
코드도 간결하고 쉬워서 쉬어가는 시간 같은 느낌,, 넘 좋다,,,
'TIL & WIL > SQL' 카테고리의 다른 글
SQL 5일차. 집합 명령어 (UNION / INTERSECT / EXCEPT) (0) | 2023.01.27 |
---|---|
SQL 4~5일차. JOIN (0) | 2023.01.26 |
SQL 4일차. 조건문(IF / CASE WHEN) + quarter (0) | 2023.01.26 |
SQL 3일차. 숫자/문자열 함수, 날짜함수 (0) | 2023.01.25 |
SQL 2일차. 명령어 ( having / order by / 프로그래머스 / 자체문제 ) (1) | 2023.01.20 |