Head First SQL 2장 (SELECT)
posted on 09 Jun 2017 under category SQL
쿼리 사용 시 SELECT 같은 예약어(?)는 대문자로 통일하는것이 보기 좋습니다.
WHERE 절에 조건을 많이 넣으려면 AND로 연결하면 된다.
ex) SELECT * FROM my_contacts WHERE last_name = ‘변’ AND first_name = ‘창원’;
my_contacts 테이블에서 last_name이 ‘변’이고, first_name 이 ‘창원’인 데이터를 찾아서 *(모든) 내용을 출력한다.
OR 을 이용하면 한 컬럼에서 여러가지를 찾을 수 있다.
ex) SELECT * FROM my_contacts WHERE last_name = ‘변’ OR last_name = ‘이’;
my_contacts 테이블에서 last_name이 ‘변’ 이거나 last_name이 ‘이’인 데이터를 찾아서 모든 내용을 출력한다.
숫자 뿐만 아니라 문자열에도 < , > , <= , >= 을 사용할수있다.(p129)
ex) SELECT * FROM my_contacts WHERE age >= 31;
my_contacts 테이블에서 age가 31살 이상인 데이터를 찾아서 모든 내용을 출력한다.
NULL을 검색하고 싶으면 IS NULL 을 사용하면 된다.
ex) SELECT * FROM my_contacts WHERE seeking IS NULL;
my_contacts 테이블에서 seeking이 NULL인 데이터를 찾아서 모든 내용을 출력한다.
범위형 만약 c >= 30 and c <= 60 이 있다면 BETWEEN 을 사용하면 된다.
ex) SELECT * FROM my_contacts WHERE age BETWEEN 28 AND 31;
my_contacts 테이블에서 age가 28이상 31이하인 데이터를 찾아서 모든 내용을 출력한다.
IN 은 안에 포함되어 있는 것들이 있으면 값을 준다.
WHERE c IN (‘cc’, ‘bb’, ‘dd’) <- cc,bb,dd 포함하고 있을때 사용.
ex) SELECT * FROM my_contacts WHERE last_name IN (‘변’, ‘이’)
my_contacts 테이블에서 last_name이 ‘변’ 이거나 ‘이’ 인 데이터를 찾아서 모든 내용을 출력한다.(정확히 맞아야 검색한다.)
NOT IN 은 안에 포함되어 있지 않을대 사용한다
ex) WHERE c NOT IN (‘cc’,’bb’,’dd’) <- cc,bb,dd 가 포함되어 있지 않을 데이터를 검색한다.
my_contacts 테이블에서 last_name이 ‘변’ 이거나 ‘이’ 가 아닌 데이터를 찾아서 모든 내용을 출력한다.
검색 : 셀렉트, MYSQL