WHERE
가져올 데이터의 조건
조건식을 작성하는데 방식 존재
연산자를 사용
원하는 데이터의 조건이 True가 되게끔 조건식을 만든다.
MySQL는 True는 1이다.
비교연선자
= > <
논리연산자
NOT AND OR
기타 주요 연산자
BETWEEN IN
SELECT number
FROM mypokemon
WHERE name = 'pikachu';
ROW를 한개씩 돌면서, 참인 경우만 반환
피카츄의 NUMBER만 나옴
SELECT name
FROM mypokemon
WHERE speed > 50;
스피드가 50보다 큰 포켓몬의 name을 출력
SELECT NAME
FROM mypokemon
WHERE type != 'electric';
타입이 전기가 아닌 친구들의 이름을 출력
SELECT name
FROM mypokemon
WHERE speed <= 100 AND type = 'electric';
스피드는 100이하이면서 type이 전기인 친구의 이름 출력
SELECT name
FROM mypokemon
WHERE type = 'bug' OR type = 'normal';
SELECT name
FROM mypokemon
WHERE speed <= 100 AND NOT(type = 'bug');
BETWEEN
특정 범위 내의 데이터를 선택할 때 사용하는 연산자
SELECT name
FROM mypokemon
WHERE speed BETWEEN 50 AND 100;
IN
목록 내 포함되는 데이터를 선택할 때 사용하는 연산자
SELECT nameFROM mypokemon
WHERE type IN('bug', 'normal');
LIKE
특정 문자열이 포함된 데이터를 선택하는 연산자
와일드 카드를 사용하여 구체적으로 표현 가능
%e e로 끝나는
e% e로 시작하는
%e% e가 포함된 문자열
_e e로 끝나고 앞에 개 문자
%_e e로 끝나고 e앞에 1개 이상의 문자
%_e_% e를 포함하고 e 앞 뒤로 각각 1개 이상의 문자가 있는 문자열
SELECT name
FROM mypokemon
WHERE name LIKE '%chu';
SELECT name
FROM mypokemon
WHERE name LIKE '%a_%';
NULL
데이터 값이 존재하지 않는다
0 이나 공백이 아닌 알 수 없는 값
IS NULL
데이터가 NULL인지 아닌지 확인하는 연산자
SELECT name
FROM mypokemon
WHERE name IS NULL;
SELECT name
FROM mypokemon
WHERE typeIS NOT NULL;
최종 예제
SELECT *
FROM mypokemon
WHERE name LIKE '%i%' AND speed <= 50;
SELECT name AS weak_pokemon
FROM mypokemon
WHERE attack < 50 OR defense < 50;
SELECT name, attack + defense + speed AS total
FROM mypokemon
WHERE attack + defense + speed >= 150;
'DB' 카테고리의 다른 글
MySQL 기초(5) (0) | 2022.05.04 |
---|---|
MySQL 기초 (4) (0) | 2022.05.02 |
MySQL 기초 (2) (0) | 2022.04.29 |
MySQL 기초(1) (0) | 2022.04.28 |
MongoDB 코랩으로 실습해보기 (0) | 2022.04.05 |