학부 때 DB 수업 듣고 나서 이 걸 들여다 본거니 ... 이게 몇년 만인거지 ;;
기본 적인 문법
SELECT * FROM [테이블이름]
WHERE [컬럼명] = [조건]
e.g.
SELECT * FROM my_contacts
WHERE location = 'Seoul'
이러면 location 이 서울인 사람에 대한 모든 컬럼들이 다 나오겠지 ...
그래서 이름과 이메일만 나오게 하려면 다음과 같이 수정 ..
SELECT name, email FROM my_contacts
WHERE location = 'Seoul'
이러면 location 이 서울인 사람의 이름과 이메일만 나옴.
WHERE 절은
1. =, <>, <, >, <=, >= 와 같은 비교 연산이 가능.
2. AND, OR 와 같은 논리 연산이 가능.
3. IS NULL 을 이용해 컬럼에 해당하는 값이 NULL인지 비교 할 수 있음.
4. LIKE를 이용해서 문자의 일부만으로 일치하는 결과를 찾을 수 있다. (와일드 카드는 %(모든문자와 매치, 마치 *와 같음)와 _(한문자와 매치, 마치 ?와 같은) 가 있음)
e.g. location이 '금천구, 서울' 일 때 WHERE location LIKE '%서울' 이라고 해도 '금천구, 서울'이 검색이 된다.
5. WHERE age >= 20 AND age <= 30은 WHERE BETWEEN 20 AND 30 과 같이 표현가능하다.
(문자도 가능하다. WHERE name BETWEEN 'K' AND 'X' --> 이름의 첫글자가 K ~ X 로 시작되는 것들을 찾아줌)
6. OR이 여러번 오면 IN을 사용할 수 있음
e.g WHERE rating = 'innovative' OR 'fabulous' OR ....;
--> WHERE rating IN ('innovative', 'fabulous', 'delightful');
7. NOT을 사용할 수 있음 (위치가 중요 WHERE, AND, OR 바로 뒤에 와야 함.)
e.g. SELECT drink_name FROM drink_info
WHERE NOT carbs BETWEEN 3 AND 5;
SELECT date_name FROM black_book
WHERE NOT date_name LIKE 'A%'
AND NOT date_name LIKE 'B%';
SELECT * FROM easy_drinks
WHERE NOT main IN ('soda', 'iced tea'); < == > WHERE main NOT IN ('soda', 'iced tea');
주로 쓰게 될 문은 사실 SELECT 이니 이정도만 정리해도 될 듯 ~~