SQL은 대학교 때 배웠지만 문법을 다시 빠르게 정리를 하는 게 좋을 것 같아서 SQL 첫걸음(https://www.yes24.com/Product/Goods/22744867)을 간단하게 훑었다. 챕터마다 연습문제가 있고, 중간중간 POINT가 있어서 집중해서 읽기 좋았다.
책은 데이터베이스 제품 종류와 서버의 구조부터 설명하기 시작한다. 특히 DB 서버와 클라이언트에 대한 간단한 설명이 좋았다.
그리고 SELECT와 함께 사용하는 여러 문법들(LIKE, ORDER BY, LIMIT, 날짜, CASE 등)을 자세하게 설명해 준다. 특정 DBMS에서는 문법이 다를 경우 각 DBMS 별로 문법을 설명해주는 점이 좋았다. 예를 들어 LIMIT는 표준 SQL이 아니므로 MySQL, PostgreSQL에서만 가능하고, SQL Server는 TOP을 사용하며, Oracle은 ROWNUM을 사용한다고 덧붙여주어서 Oracle 유저 입장에선 더 도움이 되었다. 또 개인적으로 헷갈리는 CASE 문법도 되짚어볼 수 있어서 좋았다.
이어서 INSERT, DELETE, UPDATE와 같은 DML과 GROUP BY, 서브쿼리까지 설명이 이어진다. 중간중간마다 주의해야 할 점을 말해주기 때문에 좋았다. 특히 NULL인 경우는 놓치기 쉬운데 한 번씩 짚어줘서 좋았다.
또, 데이터베이스 객체와 함께 DDL, 제약에 대해서도 설명한 뒤, 인덱스에 대해 간단히 설명한다. 어떤 알고리즘이 있는지, 실행계획은 무엇인지 간단하게 설명하고 넘어가는데 아마 이 책이 SQL 첫걸음이기 때문인 것 같다. 그리고 당연히 뷰와 UNION, JOIN도 놓치지않고 설명해준다.
마지막에는 관계형 모델, 데이터베이스 설계, 정규화, 트랜잭션까지 SQL뿐만 아니라 DBMS를 전반적으로 설명해 주기 때문에 더 유익했다.
중간중간 그림도 있고 설명도 잘 되어 있어서 제목처럼 처음 SQL을 접하거나 개념이 조금 헷갈릴 때 사전처럼 찾아 읽기 좋은 책인 것 같다.