Do it! MySQL로 배우는 SQL 입문

도서명:Do it! MySQL로 배우는 SQL 입문
저자/출판사:강성욱/이지스퍼블리싱
쪽수:408쪽
출판일:2024-04-05
ISBN:9791163035725
목차
01장 데이터베이스란?
__01-1 데이터베이스란 무엇일까?
____데이터베이스란?
____데이터베이스 관리 시스템이란?
__01-2 데이터베이스의 종류 알아보기
____계층형 데이터베이스
____네트워크형 데이터베이스
____키-값 데이터베이스
____관계형 테이터베이스
__01-3 SQL이란 무엇일까?
____DBMS에 따른 SQL의 종류
____SQL 문법의 종류
__01-4 SQL을 배워야 하는 이유
____데이터의 홍수 속에서 꼭 필요한 SQL
____SQL을 얼마나 사용하고 있을까?
02장 나만의 SQL 실습 환경 만들기
__02-1 내 컴퓨터 환경 확인하기
____윈도우에서 컴퓨터 사양 확인하기
____macOS에서 컴퓨터 사양 확인하기
__02-2 MySQL 설치하기
____윈도우에 MySQL 커뮤니티 에디션 설치하기
____macOS에 MySQL 커뮤니티 에이션 설치하기
__02-3 MySQL 워크벤치 설치하기
____윈도우에 MySQL 워크벤치 설치하기
____macOS에 MySQL 워크벤치 설치하기
__02-4 MySQL 워크벤치 사용법 알아보기
____새로운 연결 생성하기
____MySQL 워크벤치 화면 구성 살펴보기
03장 SQL 시작 전 준비 운동하기
__03-1 DDL과 DML 빠르게 맛보기
____데이터베이스 생성 및 삭제하기
____테이블 생성 및 삭제하기
____데이터 삽입, 수정, 삭제하기
__03-2 데이터베이스 모델링 이해하기
____데이터베이스 모델링의 개념과 필요성
____데이터 모델링의 유형
____데이터 모델링 단계
____sakila 데이터베이스 둘러보기
__03장 되새김 문제
04장 SQL 기본 문법 익히기
__04-1 SELECT 문으로 데이터 조회하기
____SELECT 문으로 열 조회하기
____MySQL 워크벤치에서 테이블의 열 정보 확인하기
__04-2 WHERE 문으로 조건에 맞는 데이터 조회하기
____WHERE 문으로 특정 값 조회하기
____WHERE 문에서 비교 연산자 사용해 보기
____WHERE 문에서 논리 연산자 사용해 보기
__04-3 ORDER BY 문으로 데이터 정렬하기
____ORDER BY 문으로 열 기준 정렬하기
____오름차순 또는 내림차순으로 정렬하기
____LIMIT으로 상위 데이터 조회하기
__04-4 와일드카드로 문자열 조회하기
____LIKE와 %로 특정 문자열을 포함하는 데이터 조회하기
____ESCAPE로 특수 문자를 포함한 데이터 조회하기
____LIKE와 _로 길이가 정해진 데이터 조회하기
____ _과 %로 문자열 조회하기
____REGEXP로 더 다양하게 데이터 조회하기
____와일드카드 더 활용해 보기
__04-5 GROUP BY 문으로 데이터 묶기
____GROUP BY 문으로 데이터 그룹화하기
____HAVING 문으로 그룹화한 데이터 필터링하기
____DISTINCT 문으로 중복된 데이터 제거하기
__04-6 테이블 생성 및 조작하기
____AUTO_INCREMENT로 데이터 자동 입력하기
____조회 결과를 테이블에 입력하기
__04-7 MySQL의 데이터 유형 정리하기
____숫자형 알아보기
____문자형 알아보기
____날짜형 및 시간형 알아보기
__04장 되새김 문제
05장 조인으로 두 테이블 묶기
__05-1 조인의 종류
____조인의 의미
____내부 조인
____외부 조인
____교차 조인
____셀프 조인
__05-2 쿼리 안에 또 다른 쿼리, 서브 쿼리
____WHERE 문에 서브 쿼리 사용하기
____FROM 문에 서브 쿼리 사용하기
____SELECT 문에 서브 쿼리 사용하기
__05-3 공통 테이블 표현식이란?
____일반 CTE
____재귀 CTE
__05장 되새김 문제
06장 다양한 SQL 함수 사용하기
__06-1 문자열 함수
____문자열과 문자열을 연결하는 함수 ─ CONCAT
____데이터 형 변환 함수 ─ CAST, CONVERT
____%00;을 대체하는 함수 ─ IF%00;, COALESCE
____소문자 혹은 대문자로 변경하는 함수 ─ LOWER, UPPER
____공백을 제거하는 함수 ─ LTRIM, RTRIM, TRIM
____문자열 크기 또는 개수를 반환하는 함수 ─ LENGTH, CHAR_LENGTH
____특정 문자까지의 문자열 길이를 반환하는 함수 ─ POSITION
____지정한 길이만큼 문자열을 반환하는 함수 ─ LEFT, RIGHT
____지정한 범위의 문자열을 반환하는 함수 ─ SUBSTRING
____특정 문자를 다른 문자로 대체하는 함수 ─ REPLACE
____문자를 반복하는 함수 ─ REPEAT
____공백 문자를 생성하는 함수 ─ SPACE
____문자열을 역순으로 출력하는 함수 ─ REVERSE
____문자열을 비교하는 함수 ─ STRCMP
__06-2 날짜 함수
____서버의 현재 날짜나 시간을 반환하는 다양한 함수
____날짜를 더하거나 빼는 함수 ─ DATE_ADD, DATE_SUB
____날짜 간 차이를 구하는 함수 ─ DATEDIFF, TIMESTAMPDIFF
____지정한 날짜의 요일을 반환하는 함수 ─ DAYNAME
____날짜에서 연, 월, 주, 일을 값으로 가져오는 함수 ─ YEAR, MONTH, WEEK, DAY
____날짜 형식을 변환하는 함수 ─ DATE_FORMAT, GET_FORMAT
__06-3 집계 함수
____조건에 맞는 데이터 개수를 세는 함수 ─ COUNT
____데이터의 합을 구하는 함수 ─ SUM
____데이터의 평균을 구하는 함수 ─ AVG
____최솟값 또는 최댓값을 구하는 함수 ─ MIN, MAX
____부분합과 총합을 구하는 함수 ─ ROLLUP
____데이터의 표준편차를 구하는 함수 ─ STDDEV, STDDEV_SAMP
__06-4 수학 함수
____절댓값을 구하는 함수 ─ ABS
____양수 또는 음수 여부를 판단하는 함수 ─ SIGN
____천장값과 바닥값을 구하는 함수 ─ CEILING, FLOOR
____반올림을 반환하는 함수 ─ ROUND
____로그를 구하는 함수 ─ LOG
____e의 n 제곱값을 구하는 함수 ─ EXP
____거듭제곱값을 구하는 함수 ─ POWER
____제곱근을 구하는 함수 ─ SQRT
____난수를 구하는 함수 ─ RAND
____삼각 함수 ─ COS, SIN, TAN, ATAN
__06-5 순위 함수
____유일한 값으로 순위를 부여하는 함수 ─ ROW_NUMBER
____우선순위를 고려하지 않고 순위를 부여하는 함수 ─ RANK
____건너뛰지 않고 순위를 부여하는 함수 ─ DENSE_RANK
____그룹 순위를 부여하는 함수 ─ NTILE
__06-6 분석 함수
____앞 또는 뒤 행을 참조하는 함수 ─ LAG, LEAD
____누적 분포를 계산하는 함수 ─ CUME_DIST
____상대 순위를 계산하는 함수 ─ PERCENT_RANK
____첫 행 또는 마지막 행의 값을 구하는 함수 ─ FIRST_VALUE, LAST_VALUE
__06장 되새김 문제
07장 SQL 제대로 활용하기
__07-1 스토어드 프로시저
____스토어드 프로시저를 사용하는 이유
____스토어드 프로시저 생성하기
____스토어드 프로시저 호출하기
____스토어드 프로시저 내용 확인하기
____스토어드 프로시저 삭제하기
__07-2 SQL 프로그래밍
____IF 문
____CASE 문
____WHILE 문
____동적 SQL
__07-3 인덱스
____인덱스를 사용할 때 주의할 점
____인덱스의 종류
____인덱스 생성 및 삭제하기
__07-4 뷰
____뷰를 사용하는 이유
____뷰 생성 및 조회하기
____뷰 수정하기
____뷰 정보 확인하기
____뷰 삭제하기
____뷰를 사용해 데이터 조작하기
__07-5 스토어드 함수와 커서
____스토어드 함수 이해하기
____커서 알아 두기
__07-6 트리거
____트리거의 종류
____트리거 실행 시기
____트리거 생성하기
__07장 되새김 문제
08장 파이썬과 DB로 주식 분석 시스템 만들기
__08-1 실습 환경 구성하기
____파이썬 설치하기
____비주얼 스튜디오 코드 설치하기
__08-2 크롤러 및 저장 시스템 만들기
____주식 분석 시스템 구성하기
____파이썬 라이브러리 설치하기
____데이터베이스 스키마와 기초 데이터 생성하기
____파이썬 크롤러 만들기
__08-3 MySQL로 주식 분석하기
____52주 동안의 주가 분석하기
____하루 동안의 종목 변화 분석하기
____전일 대비 종목의 변화 분석하기
____주가가 연속 상승한 종목 분석하기
부록
__A-1 데이터베이스 정규화란?
____제1 정규화(1NF)
____제2 정규화(2NF)
____제3 정규화(3NF)
____BCNF 정규화(Boyce-Codd Normal Form)
____제4 정규화(4NF)
____제5 정규화(5NF)
__A-2 MySQL 워크벤치 모델링 툴 살펴보기
__A-3 실습에 필요한 데이터베이스 설치하기
Do it! 되새김 문제_정답 및 풀이
찾아보기