///////
Search
2️⃣

조건식의 시작 · 패턴으로 찾는법

핵심포인트

왜 조건절이 필요할까? : 우리가 데이터를 활용하기 위해 조회할 때, 모든 데이터를 다 가져와서 사용하진 않는다. 수 많은 데이터중에 요구사항에 맞는 정보를 얻기 위해 가공이 필요할 것이다. 이때 필요한 구문이 조건절이다. = 필터링기능
조건절은 다양한 연산자를 작성하여 표현한다.
조건식절 종류에는 WHERELIKE 가 있고 둘 다 결과를 True/False를 반환하는 조건절 구문이고, LIKE는 키워드와 패턴을 이용하고, WHERE은 정확한 값 기준으로 필터링한다.

WHERE

기본문법

// MEMBER 테이블에서 ID가 4인 행을 다 (*) 가져와라. SELECT * FROM MEMBER WHERE M_ID = 4;
SQL
복사

연산자 활용

조건절에서 사용하는 우리가 아는 기본 연산자 ( >, <, = , ≠ ) 외에도 sql만의 연산자가 있습니다. 그에 대해 알아보겠습니다.

column BETWEEN a AND b

특정 칼럼(열)의 값이 a 이상 b 이하에 있는 값이면 TRUE
SELECT * FROM MEMBER WHERE M_CREATED_DATETIME BETWEEN '2030-02-02 00:00' AND '2030-02-03 00:00';
SQL
복사

IS NULL / IS NOT NULL

특정 칼럼에 NULL값의 존재여부 확인
이때, 0이나 ‘ ‘ 같은 공백은 NULL이 아니다. NULL은 오직 정의되지 않은 값(빈칸)을 가르킨다.
SELECT * FROM BOARD WHERE M-_ID IS NULL SELECT * FROM BOARD WHERE M-_ID IS NOT NULL
SQL
복사

LIKE

정확한 값을 기준으로 필터링하는 방법이 아닌 특정한 패턴에 일치하는 데이터를 필터링하기 위해서 사용한다.

기본문법

SELECT 칼럼,FROM 테이블 이름 WHERE 칼럼 LIKE 패턴; SELECT * FROM MEMBER WHERE M_NAME LIKE '김%';
SQL
복사

와일드카드 ( = 패턴표현법)

%

모든 문자, 문자열 또는 아무것도 없는 (’ ‘) 것을 의미한다.
%안녕% 이는 안녕이란 단어가 변형되지 않는 이상, 안녕이란 단어가 들어 가 있는 데이터를 모두 찾을 수 있다. 안녕% 안녕으로 시작하는 문장의 데이터만 가져온다 %안녕 안녕으로 끝나는 문장의 데이터만 가져온다. %안녕% 안 녕 (false)
SQL
복사

_ ( 언더스코어 )

모든 ‘문자(공백포함)’만을 의미하며, 하나의 문자를 의미한다.
_박_ 김박수(TRUE) 김박(FALSE) 박수(FALSE) ' 박 '(TRUE) 자__ (언더바 두개) 자바(FALSE) 자바짱(TRUE)
SQL
복사
%와 _는 섞어서 쓸 수도 있다.