저자

김임용

저자:김임용

데이터로밥먹고산지10년이넘었습니다.대학에서산업공학을전공하고,동국제강에서통계를기반한데이터분석업무를담당하며생산성향상,품질부적합예방,원가절감등수익성개선을위한다양한업무를수행했습니다.이후오퍼레이션컨설팅회사로옮겨타국에위치한국내대기업공장의수익성향상을위한컨설팅업무도경험했습니다.

이러한경험을바탕으로현재는발전공기업인한국동서발전에서데이터과학자로근무하고있습니다.다양한데이터분석방법론을실제현장에적용해문제를해결하고,새로운가치를창출하는업무를수행하고있습니다.뿐만아니라데이터기반의사결정문화확산을위해데이터분석강의및컨설팅업무도함께하고있습니다.세상에정답은없지만데이터를이용해보다나은선택은할수있다고생각합니다.

목차

Chapter1데이터베이스와SQL
1.데이터란?
1-1.데이터의정의
1-2.데이터,정보,지식,지혜
1-3.빅데이터의등장
1-4.빅데이터가만들어내는변화
1-5.빅데이터의활용
1-6.데이터분야직무정보
2.데이터베이스와SQL
2-1.데이터베이스의정의
2-2.데이터베이스의종류와테이블구조
2-3.SQL이란?
2-4.데이터관리시스템
핵심요약
연습문제

Chapter2데이터베이스설치하기
1.PostgreSQL설치하기
1-1.PostgreSQL
1-2.PostgreSQL다운로드및설치하기(Windows기반)
2.pgAdmin
2-1.데이터베이스접속하기
2-2.화면구성및Path설정하기
2-3.데이터타입
2-4.데이터무결성과제약조건
3.실습환경만들기
3-1.실습용데이터셋
3-2.테이블명세서
3-3.실습용테이블만들기
핵심요약
연습문제

Chapter3데이터조회하기(기초)
1.데이터조회및정렬
1-1.주석과쿼리실행하기
1-2.전체데이터조회하기
1-3.전체데이터개수출력하기
1-4.원하는열만조회하기
1-5.열이름바꿔조회하기
1-6.데이터정렬하기(ORDERBY)
1-7.원하는개수의데이터만조회하기(LIMIT)
1-8.중복된결과제거하기(DISTINCT)
1-9.원하는조건의데이터만조회하기(WHERE)
1-10.원하는문자만가져오기(SUBSTRING)
1-11.기타문자열함수
2.데이터집계
2-1.데이터집계하기(GROUPBY)
2-2.원하는조건으로데이터집계하기(HAVING)
3.데이터변환및조건문
3-1.데이터타입변환하기(TO_CHAR)
3-2.NULL변환(COALESCE,NULLIF)
3-3.원하는조건으로항목추가하기(CASE)
핵심요약
연습문제

Chapter4데이터조회하기(고급)
1.데이터합치기
1-1.두테이블의데이터열로합치기(JOIN)
1-2.두테이블의데이터행으로합치기(UNION)
2.서브쿼리와뷰테이블
2-1.쿼리안에쿼리넣기
2-2.나만의가상테이블만들기(VIEW)
3.테이블형태변환
3-1.행을열로바꾸기(PIVOT)
3-2.열을행으로바꾸기(UNPIVOT)
핵심요약
연습문제

Chapter5데이터수정하기
1.데이터추가(INSERT)
1-1.데이터한건추가하기
1-2.데이터여러건추가하기
2.데이터수정(UPDATE)
2-1.데이터수정하기
2-2.pgAdmin을이용해수정하기
3.데이터및테이블삭제(DELETE,DROPTABLE)
3-1.모든데이터삭제하기
3-2.특정조건의데이터삭제하기
3-3.테이블삭제하기(DROPTABLE)
핵심요약
연습문제

Chapter6프로시저와잡
1.프로시저(Procedure)
1-1.프로시저란?
1-2.실습용테이블만들기
1-3.프로시저만들기
1-4.프로시저실행하기
2.잡(Job)
2-1.pgAgent설치하기
2-2.잡등록하기
핵심요약
연습문제
Chapter7사례기반실습
1.조류독감이의심되는닭을찾아보자!
2.건강상태가나빠진원인을찾아보자!
3.품종별가장무거운닭Top3를골라보자!
4.여러테이블의데이터를연결해종합실적을조회해보자!
5.종합실적을뷰테이블로만들어보자!

Chapter8데이터베이스구조와수행
1.SQL수행구조
1-1.아키텍처
1-2.SQL처리과정
1-3.연산및절우선순위
2.인덱스(INDEX)와조인(JOIN)
2-1.인덱스란?
2-2.실행계획확인하기(EXPLAIN)
2-3.인덱스실습
2-4.조인방법
핵심요약
연습문제

Chapter9데이터모델링과ERD
1.데이터모델링
1-1.데이터모델링이란?
1-2.개체와속성
1-3.관계
1-4.식별자
2.ERD와테이블명세서
2-1.pgAdmin으로ERD그리기
2-2.테이블명세서조회
핵심요약
연습문제

Chapter10참고할만한내용들
1.SQLShell(psql)
1-1.psql이란?
1-2.psql을이용한쿼리실습
2.파이썬과데이터베이스연결하기
2-1.파이썬이란?
2-2.파이썬에서데이터베이스접속하기
2-3.파이썬에서쿼리실행하기
3.R과데이터베이스연결하기
3-1.R이란?
3-2.R에서데이터베이스접속하기
3-3.R에서쿼리실행하기
4.태블로와데이터베이스연결하기
4-1.태블로(Tableau)란?
4-2.태블로에서데이터베이스접속하기
4-3.태블로에서데이터시각화하기
5.범용접속도구(DBeaver)사용하기
5-1.DBeaver란?
5-2.DBeaver설치하기
5-3.DBeaver로데이터베이스접속하기
6.실습사이트소개
6-1.프로그래머스스쿨
6-2.solvesql
6-3.SQLZOO
6-4.HackerRank
연습문제정답

출판사 서평

제가SQL(StructuredQueryLanguage)을처음접한것은해군전산병으로복무할때였습니다.당시해군사관학교홈페이지관리를담당하면서자연스레데이터베이스를배울수있었습니다.벌써20년이다되어갑니다.재미있는것은그때배웠던SQL을지금도잘쓰고있다는것입니다.이것은매우중요한부분입니다.다른프로그래밍언어와달리,SQL은한번제대로배우면20년은충분히써먹을수있다는이야기입니다.아마도관계형데이터베이스영역에서보다혁신적인데이터관리시스템이발명되지않는이상앞으로도SQL은계속쓰일것입니다.게다가처음보는데이터베이스관리시스템(DBMS)이더라도SQL문법체계는동일합니다.즉,Oracle을사용하든,PostgreSQL을사용하든SQL은동일하다는뜻입니다.그리고SQL은쉽습니다.SQL을사용하는주된목적이그저내가원하는데이터를데이터베이스로부터가져오기위함이기때문입니다.따라서매우직관적이며논리적인언어입니다.SQL사용능력은제게많은기회를가져다주었고,자연스레데이터과학자로성장할수있는길을열어주었습니다.
---「머리말」중에서