본문 바로가기
Data-driven Methodology/DataBase

[DataBase] MySQL WHERE

by goatlab 2024. 5. 20.
728x90
반응형
SMALL

WHERE

 

특정 조건을 주어 데이터를 검색하는데 사용되는 문법이다. 조건식에 비교연산, 논리연산 등을 사용할수 있다. 선언하는 형식은 다음과 같다.

 

SELECT <컬럼이름 1>, <컬럼이름 2>, ...
FROM <테이블 이름>
WHERE <조건식>
USE world;
SELECT database();
SHOW tables;

# 인구가 8000만 이상인 국가 출력 
# 컬럼 : 국가코드, 국가이름, 인구수
# 연산자 우선순위 : 산술 > 비교 > 할당
SELECT code, name, population
FROM country
WHERE population >= (8000 * 10000);

 

WHERE : AND / OR

 

# 아시아 국가중에 인구수가 4000만 ~ 8000만인 국가 출력
# 컬럼 : 국가코드, 국가이름, 인구수
SELECT code, name, continent, population
FROM country
WHERE (continent = 'Asia')
      AND (population >= 4000 * 10000)
      AND (population <= 8000 * 10000);

# 아시아, 아프리카 대륙 데이터 출력
# 컬럼 : 국가코드, 국가이름, 대륙이름, 인구수
SELECT code, name, continent, population
FROM country
WHERE continent = 'Asia' OR continent = 'Africa';

 

WHERE : BETWEEN

 

범위 연산시 사용한다.

 

# BETWEEN AND : 범위 연산시 쿼리를 간결하게 사용 가능
SELECT code, name, continent, population
FROM country
WHERE (continent = 'Asia') AND
      population BETWEEN 4000 * 10000 AND 8000 * 10000;

 

WHERE : NOT IN

 

하나의 컬럼에 여러개의 OR를 사용하는 경우 쿼리를 간단하게 줄여줄수 있다.

 

# IN, NOT IN : 여러개의 컬럼을 OR로 출력할때 쿼리 줄여줌
SELECT code, name, continent, population
FROM country
WHERE continent NOT IN ('Asia', 'Africa');

 

WHERE : LIKE

 

특정 문자열이 포함된 데이터 출력한다.

 

USE sakila;
SELECT * FROM film;
SELECT title, description, length 
FROM film
WHERE description LIKE '%robot%'
	  AND length BETWEEN 60 AND 100;

728x90
반응형
LIST