LIKE 는 문자열을 이용해 데이터를 필터링 할 때 사용할 수 있는 연산입니다. LIKE 는 문자열 중 일부가 같으면 조회하는 기능을 갖고 있습니다. 여기서 LIKE 는 와일드 카드라는 기능을 사용합니다.
와일드카드는 대표적으로 % 와 _ 가 있습니다. 두 가지의 의미는 다음과 같습니다.
예를 들면 W% 는 W로 시작하는 문자열을 의미하며, _W는 W로 끝나는 두 글자의 문자열을 의미합니다.
SELECT title FROM books WHERE title LIKE 'Wh%';
위 코드는 title 중 wh로 시작하는 제목을 출력하는 뜻입니다.

위 사진을 보면 wh로 시작하는 제목을 출력한 것을 확인할 수 있습니다.
select author_fname from books where author_fname like '_a___';
위 코드는 author_fname 가 5글자이며 두 번째 글자가 a인 값을 출력하는 뜻입니다.

위 사진을 보면 글자 수가 5개이며 두 번째 글자가 a인 author_fname 를 출력하는 것을 확인할 수 있습니다.
IN 은 여러 개의 값 중에서 특정한 값이 존재하는지 확일할 때 사용하는 연산입니다.
SELECT title, author_lname FROM books WHERE author_lname IN ('Lahiri', 'Gaiman');
위 코드는 author_lname 이 'Lahiri'거나 'Gaiman'인 사람의 title 과 author_lname 을 출력하는 의미입니다.
위 코드의 결과는 다음과 같습니다.

AND 연산은 모든 조건이 참일 경우에 True가 되는 논리 연산이며 OR 은 모든 존건 중 하나만 참일 경우 True가 되는 연산입니다. 참고로 두 연산을 같이 사용할 때는 우선적으로 처리해야할 조건에 괄호를 사용하는 것이 좋습니다. 왜냐하면 AND 연산이 OR 연산보다 우선순위를 갖고 있기 때문입니다. 두 연산을 사용하는 방법은 다음과 같습니다.
SELECT title, author_lname, released_year, pages
FROM books
WHERE ( author_lname LIKE 'L%' OR pages <= 300) AND released_year < 2000;
위 코드의 의미는 author_lname 의 첫 글자가 L이거나 pages가 300 이하면서 released_year 가 2000보다 낮은 행의 title, author_lname, released_year, pages 를 조회하는 의미입니다.
위 코드의 결과는 다음과 같습니다.

BETWEEN 은 같은 컬럼에 대해 크기를 비교할 때 사용하는 연산입니다.
SELECT title, released_year FROM books WHERE released_year BETWEEN 2004 AND 2015;
위 코드는 released_year가 2004 이상 2015 이하인 행의 title, released_year 를 출력합니다. 위 코드의 결과는 다음과 같습니다.
