2. SELECT문
1) 더 나은 SELECT 문 : 예) SELECT * FROM my_contacts WHERE first_name = 'Anne';
┗WHERE 절을 사용하면 데이터베이스 시스템에 무엇을 찾는지 전달 할 수 있음.
* : 데이터베이스 시스템에게 테이블의 모든 열을 보여달라는 의미.
※주의 : 문자열에 작은 따옴표를 사용. 작은 따옴표 필요 없는 자료형 = INT, DEC
2) 작은 따옴표 사용법 :
① 작은 따옴표 앞에 백슬래시('\') 예) INSERT INTO my_contacts (location) VALUES ('Grover\'s Mill');
② 작은 따옴표 2번 예) INSERT INTO my_contacts (location) VALUES ('Grover''s Mill');
3) 특정 데이터 SELECT : 앞의 SELECT문에서 *대신 원하는 열을 입력하면 그 열만 SELECT됨.
예) SELECT drink_name, main, second FROM easy_drinks WHERE main = 'soda';
Tip. 결과를 더 빠르게 가져올 수 있음.
4) 쿼리들의 결합 : AND, OR를 사용해서 두 개의 절을 결합 가능.
예)SELECT location FROM doughnut_ratings WHERE type = 'plain glazed' AND ration = 10;
SELECT location FROM doughnut_ratings WHERE type = 'plain glazed' OR ration = 10;
Tip. 같은 WHERE 절에 AND와 OR을 동시에 사용도 가능.
5) 비교 연산자를 이용한 숫자형, 문자열 처리 : >, <, >=, <=, <> 사용 가능.
예)SELECT drink_name FROM drink_info WHERE cost >= 3.5 AND calories < 50;
SELECT drink_name FROM drink_info WHERE drink_name >= 'L' AND drink_name <'M';
┗첫번째 문자가 L로 시작하는 모든 음료 찾기.
6) IS NULL : NULL 찾기
예)SELECT drink_name FROM drink_info WHERE calories IS NULL;
6) LIKE : 문자열의 일부가 일치하는 결과 찾기
예)SELECT * FROM my_contacts WHERE location LIKE '%CA';
┗ location 열이 CA로 끝나는 모든 값 찾기
※와일드카드 : % = 다수의 불특정 문자를 대신, _ = 단 하나의 불특정 문자를 대신.
7) BETWEEN : 범위 정해서 찾기
예)SELECT drink_name FROM drink_info WHERE calories BETWEEN 30 AND 60;
8) IN : 여러 개의 OR
예)SELECT date_name FROM black_book WHERE rating IN (‘innovative’, ‘fabulous’, ‘delightful’, ‘pretty good’);
9) NOT : 부정
예)SELECT drink_name FROM drink_info WHERE NOT carbs BETWEEN 3 and 5;
┗ carbs가 3 미만, 5 초과인 레코드들을 찾음.
SELECT date_name FROM black_book WHERE NOT date_name LIKE ‘A%’ AND NOT date_time LIKE
‘B%’
┗ date_name이 A와 B로 시작하지 않는 레코드들을 찾음.
'블로그 > DB(HeadFirstSQL)' 카테고리의 다른 글
Head First SQL(헤드퍼스트SQL) 핵심요약 - Chapter3. DELETE와 UPDATE (0) | 2013.10.13 |
---|---|
Head First SQL(헤드퍼스트SQL) 핵심요약 - Chapter1. 데이터와 테이블 (0) | 2013.10.06 |