초보자를 위한 SQL 200제(PL/SQL) (SQL 시작을 위한 최고의 입문서!)

초보자를 위한 SQL 200제(PL/SQL) (SQL 시작을 위한 최고의 입문서!)

$26.28
Description
데이터를 활용하기 위한 최선의 방법!
그동안 수없이 많은 프로그래밍 관련 기술들이 나왔지만, 데이터를 검색하고 다루는 기술은 SQL(Structure Query Language)이 한결같이 자리를 지키고 있습니다. 이 책은 총 5개 파트와 200개의 예제로 구성되어 있습니다. 차근차근 예제를 통해 SQL 기초를 다지고, 직접 프로그램을 실행해봄으로써 SQL을 활용한 머신러닝 데이터 분석으로 Kaggle 상위권에 진입할 수 있도록 구성되어 있습니다. 머신러닝 기능이 탑재되어 있는 오라클 19c 버전을 설치하고, 예제를 하나하나 직접 입력하면서 책에 나온 결과값과 비교해보며 학습하면 어느덧 데이터분석이 어렵지 않게 될 것입니다.

윈도우 OS의 명령 프롬프트를 통해 SQL*PLUS 프롬프트 창으로 오라클 데이터베이스에 접속해서 학습을 해도 되고, SQL DEVELOPER를 통해 학습해도 됩니다. 책에 수록된 예제 코드와 데이터 파일은 정보문화사 홈페이지(infopub.co.kr)의 자료실에서 다운로드 받을 수 있습니다. 또한 학습 중 궁금한 사항은 저자 홈페이지(cafe.daum.net/oracleoracle)에서 피드백 가능하기 때문에 독학으로 충분히 습득할 수 있습니다.
저자

유연수

서울시립대를졸업하고,OCM(OracleCertifiedMaster)자격을보유하고있습니다.한국오라클교육센터에서여러데이터베이스과목을강의했으며,국내주요대기업에서SQL과SQL튜닝교육을하였습니다.현재는머신러닝을이용한데이터분석을강의하고있습니다.

목차

PART1〈입문〉SQL첫발내딛기
001테이블에서특정열(COLUMN)선택하기
002테이블에서모든열(COLUMN)출력하기
003컬럼별칭을사용하여출력되는컬럼명변경하기
004연결연산자사용하기(||)
005중복된데이터를제거해서출력하기(DISTINCT)
006데이터를정렬해서출력하기(ORDERBY)
007WHERE절배우기①(숫자데이터검색)
008WHERE절배우기②(문자와날짜검색)
009산술연산자배우기(*,/,+,-)
010비교연산자배우기①(〉,〈,〉=,〈=,=,!=,〈〉,^=)
011비교연산자배우기②(BETWEENAND)
012비교연산자배우기③(LIKE)
013비교연산자배우기④(ISNULL)
014비교연산자배우기⑤(IN)
015논리연산자배우기(AND,OR,NOT)

PART2〈초급〉SQL기초다지기
016대소문자변환함수배우기(UPPER,LOWER,INITCAP)
017문자에서특정철자추출하기(SUBSTR)
018문자열의길이를출력하기(LENGTH)
019문자에서특정철자의위치출력하기(INSTR)
020특정철자를다른철자로변경하기(REPLACE)
021특정철자를N개만큼채우기(LPAD,RPAD)
022특정철자잘라내기(TRIM,RTRIM,LTRIM)
023반올림해서출력하기(ROUND)
024숫자를버리고출력하기(TRUNC)
025나눈나머지값출력하기(MOD)
026날짜간개월수출력하기(MONTHS_BETWEN)
027개월수더한날짜출력하기(ADD_MONTHS)
028특정날짜뒤에오는요일날짜출력하기(NEXT_DAY)
029특정날짜가있는달의마지막날짜출력하기(LAST_DAY)
030문자형으로데이터유형변환하기(TO_CHAR)
031날짜형으로데이터유형변환하기(TO_DATE)
032암시적형변환이해하기
033NULL값대신다른데이터출력하기(NVL,NVL2)
034IF문을SQL로구현하기①(DECODE)
035IF문을SQL로구현하기②(CASE)
036최대값출력하기(MAX)
037최소값출력하기(MIN)
038평균값출력하기(AVG)
039토탈값출력하기(SUM)
040건수출력하기(COUNT)
041데이터분석함수로순위출력하기①(RANK)
042데이터분석함수로순위출력하기②(DENSE_RANK)
043데이터분석함수로등급출력하기(NTILE)
044데이터분석함수로순위의비율출력하기(CUME_DIST)
045데이터분석함수로데이터를가로로출력하기(LISTAGG)
046데이터분석함수로바로전행과다음행출력하기(LAG,LEAD)
047COLUMN을ROW로출력하기①(SUM+DECODE)
048COLUMN을ROW로출력하기②(PIVOT)
049ROW를COLUMN으로출력하기(UNPIVOT)
050데이터분석함수로누적데이터출력하기(SUMOVER)
051데이터분석함수로비율출력하기(RATIO_TO_REPORT)
052데이터분석함수로집계결과출력하기①(ROLLUP)
053데이터분석함수로집계결과출력하기②(CUBE)
054데이터분석함수로집계결과출력하기③(GROUPINGSETS)
055데이터분석함수로출력결과넘버링하기(ROW_NUMBER)

PART3〈중급〉SQL실력다지기
056출력되는행제한하기①(ROWNUM)
057출력되는행제한하기②(SimpleTOP-nQueries)
058여러테이블의데이터를조인해서출력하기①(EQUIJOIN)
059여러테이블의데이터를조인해서출력하기②(NONEQUIJOIN)
060여러테이블의데이터를조인해서출력하기③(OUTERJOIN)
061여러테이블의데이터를조인해서출력하기④(SELFJOIN)
062여러테이블의데이터를조인해서출력하기⑤(ON절)
063여러테이블의데이터를조인해서출력하기⑤(USING절)
064여러테이블의데이터를조인해서출력하기⑥(NATURALJOIN)
065여러테이블의데이터를조인해서출력하기⑦(LEFT/RIGHTOUTERJOIN)
066여러테이블의데이터를조인해서출력하기⑧(FULLOUTERJOIN)
067집합연산자로데이터를위아래로연결하기①(UNIONALL)
068집합연산자로데이터를위아래로연결하기②(UNION)
069집합연산자로데이터의교집합을출력하기(INTERSECT)
070집합연산자로데이터의차이를출력하기(MINUS)
071서브쿼리사용하기①(단일행서브쿼리)
072서브쿼리사용하기②(다중행서브쿼리)
073서브쿼리사용하기③(NOTIN)
074서브쿼리사용하기④(EXISTS와NOTEXISTS)
075서브쿼리사용하기⑤(HAVING절의서브쿼리)
076서브쿼리사용하기⑥(FROM절의서브쿼리)
077서브쿼리사용하기⑦(SELECT절의서브쿼리)
078데이터입력하기(INSERT)
079데이터수정하기(UPDATE)
080데이터삭제하기(DELETE,TRUNCATE,DROP)
081데이터저장및취소하기(COMMIT,ROLLBACK)
082데이터입력,수정,삭제한번에하기(MERGE)
083락(LOCK)이해하기
084SELECTFORUPDATE절이해하기
085서브쿼리를사용하여데이터입력하기
086서브쿼리를사용하여데이터수정하기
087서브쿼리를사용하여데이터삭제하기
088서브쿼리를사용하여데이터합치기
089계층형질의문으로서열을주고데이터출력하기①
090계층형질의문으로서열을주고데이터출력하기②
091계층형질의문으로서열을주고데이터출력하기③
092계층형질의문으로서열을주고데이터출력하기④
093일반테이블생성하기(CREATETABLE)
094임시테이블생성하기(CREATETEMPORAYTABLE)
095복잡한쿼리를단순하게하기①(VIEW)
096복잡한쿼리를단순하게하기②(VIEW)
097데이터검색속도를높이기(INDEX)
098절대로중복되지않는번호만들기(SEQUENE)
099실수로지운데이터복구하기①(FLASHBACKQUERY)
100실수로지운데이터복구하기②(FLASHBACKTABLE)
101실수로지운데이터복구하기③(FLASHBACKDROP)
102실수로지운데이터복구하기④(FLASHBACKVERSIONQUERY)
103실수로지운데이터복구하기⑤(FLASHBACKTRANSACTIONQUERY)
104데이터의품질높이기①(PRIMARYKEY)
105데이터의품질높이기②(UNIQUE)
106데이터의품질높이기③(NOTNULL)
107데이터의품질높이기④(CHECK)
108데이터의품질높이기⑤(FOREIGNKEY)
109WITH절사용하기①(WITH~AS)
110WITH절사용하기②(SUBQUERYFACTORING)
111SQL로알고리즘문제풀기①(구구단2단출력)
112SQL로알고리즘문제풀기②(구구단1단~9단출력)
113SQL로알고리즘문제풀기③(직각삼각형출력)
114SQL로알고리즘문제풀기④(삼각형출력)
115SQL로알고리즘문제풀기⑤(마름모출력)
116SQL로알고리즘문제풀기⑥(사각형출력)
117SQL로알고리즘문제풀기⑦(1부터10까지숫자의합)
118SQL로알고리즘문제풀기⑧(1부터10까지숫자의곱)
119SQL로알고리즘문제풀기⑨(1부터10까지짝수만출력)
120SQL로알고리즘문제풀기⑩(1부터10까지소수만출력)
121SQL로알고리즘문제풀기⑪(최대공약수)
122SQL로알고리즘문제풀기⑫(최소공배수)
123SQL로알고리즘문제풀기⑬(피타고라스의정리)
124SQL로알고리즘문제풀기⑭(몬테카를로알고리즘)
125SQL로알고리즘문제풀기⑮(오일러상수자연상수구하기)

PART4〈활용〉SQL응용다지기
126엑셀데이터를DB에로드하는방법
127스티브잡스연설문에서가장많이나오는단어는무엇인가?
128스티브잡스연설문에는긍정단어가많은가부정단어가많은가?
129절도가많이발생하는요일은언제인가?
130우리나라에서대학등록금이가장높은학교는어디인가?
131서울시물가중가장비싼품목과가격은무엇인가?
132살인이가장많이발생하는장소는어디인가?
133가정불화로생기는가장큰범죄유형은무엇인가?
134방화사건의가장큰원인은무엇인가?
135전국에서교통사고가제일많이발생하는지역은어디인가?
136치킨집폐업이가장많았던연도가언제인가?
137세계에서근무시간이가장긴나라는어디인가?
138남자와여자가각각많이걸리는암은무엇인가?
139PL/SQL변수이해하기①
140PL/SQL변수이해하기②
141PL/SQLIF이해하기①(IF~ELSE문)
142PL/SQLIF이해하기②(IF~ELSIF~ELSE문)
143PL/SQLBasicLoop이해하기
144PL/SQLWhileLoop이해하기
145PL/SQLforLoop이해하기
146PL/SQL이중Loop문이해하기
147PL/SQLCursor문이해하기(BASICLOOP)
148PL/SQLCursor문이해하기(FORLOOP)
149PL/SQLCursorforloop문이해하기
150프로시저구현하기
151함수구현하기
152수학식구현하기①(절대값)
153수학식구현하기②(직각삼각형)
154수학식구현하기③(지수함수)
155수학식구현하기④(로그함수)
156수학식구현하기⑤(순열)
157수학식구현하기⑥(조합)
158기초통계구현하기①(평균값)
159기초통계구현하기②(중앙값)
160기초통계구현하기③(최빈값)
161기초통계구현하기④(분산과표준편차)
162기초통계구현하기⑤(공분산)
163기초통계구현하기⑥(상관계수)
164기초통계구현하기⑦(확률①)
165기초통계구현하기⑧(확률②)
166기초통계구현하기⑨(이항분포)
167기초통계구현하기⑩(정규분포)
168PL/SQL로알고리즘문제풀기①(삼각형출력)
169PL/SQL로알고리즘문제풀기②(사각형출력)
170PL/SQL로알고리즘문제풀기③(피타고라스의정리)
171PL/SQL로알고리즘문제풀기④(팩토리얼)
172PL/SQL로알고리즘문제풀기⑤(최대공약수)

출판사 서평

한권으로배우는머신러닝데이터분석,Kaggle도전까지!

최근온세계를힘들게하는코로나19의확산을막는데데이터의힘이크게작용하고있습니다.질병관리본부에서매일확진자데이터를수집하고분석하며확산방지에최선을다하고있습니다.그외에도벌어지는사회현상에서답을찾기위해SQL이다방면으로사용되고있습니다.모든데이터가저장된데이터베이스에서정보를찾는강력한언어인SQL은대용량이되고있는데이터로머신러닝을구현하기도합니다.

이책에서는SQL초보자가문법부터배우기시작하여나중에는데이터를분석할수있는수준까지이르게합니다.또한PL/SQL을이용하여알고리즘문제를풀어보면서자연스럽게데이터관리에접근할수있습니다.그리고막막한초보자를위해제공되는30일스케줄러를바탕으로학습을시작하면자연스럽게몸에익혀지는체험을할수있습니다.