[MySQL] 조건절 WHERE 사용하기(and, or, not, like)
SELECT와 FROM에 이어 WHERE도 사용해 보자.
제조사 A의 제품만 출력하고 싶다면?
조건절에 manufacturer="A" 라고 선언하면 될 것이다.
SELECT
*
FROM
product_data
WHERE
manufacturer="A"
;
가격이 100만 원인 제품의 이름과 제조사만 출력하려면?
SELECT
name, manufacturer
FROM
product_data
WHERE
price=1000000
;
WHERE 절에는 and 를 사용할 수 있다.
가격이 100만 원 이상, 500만 원 이하인 제품은?
SELECT
*
FROM
product_data
WHERE
price>=1000000 and price<=5000000
;
or 역시 사용할 수 있다.
A 혹은 C 사의 제품 중 가격이 100만 원 이상 300만 원 이하인 제품은?
SELECT
*
FROM
product_data
WHERE
price>=1000000 and price<=3000000 and (manufacturer="A" or manufacturer="C")
;
물론 위의 쿼리를 '제조사가 B가 아닌 것'으로 쓸 수도 있다.
SELECT
*
FROM
product_data
WHERE
price>=1000000 and price<=3000000 and NOT manufacturer="B"
;
마지막으로 like는 특정 문자열을 검색할 때 사용한다.
예를 들어 name 에 "기" 가 들어 있는 데이터만 추출하고 싶다면
SELECT
*
FROM
product_data
WHERE
name like "*기*"
;
(*)은 와일드카드로 작동한다.
MySQL 등에서는 와일드카드로 * 대신 %를 사용한다는 것도 참고하자.