WHERE (조건에 맞는 데이터들만 조회할 때 사용)

 

  • 비교연산자 : 특정한 컬럼이 특정한 값을 가지는 데이터만 불러오기 위해 사용
  • = '같다', <> '다르다', >= '크거나 같다', <= '작거나 같다'
  • 문자도 비교 가능      ex)  < 'D'  →  'A', 'B', 'C'
  • AND '모든 조건이 만족' / OR '어느 한 조건이라도 만족'

 

 

 

 

LIKE (문자열의 패턴을 검색할 때 사용)

 

SELECT *
FROM 테이블명
WHERE 컬럼명 LIKE 패턴

 

  • 와일드키    % (모든 글자)  / _ (한 글자)   

    ex)  'a%' ⇒ a로 시작하는 문자열   /   'a _ _ _ _' ⇒ a로 시작하고 글자 수가 5개인 문자열

  • 정확한 문자열을 알 경우, LIKE 보다 = 을 쓰는 것이 속도가 더 빠르다.

    ex)  WHERE city LIKE 'Seoul'  <<<<  WHERE city = 'Seoul'

  • 예약어가 아닌 %(퍼센트) 기호 자체를 사용할땐, '\(역슬래시)' 사용

    ex)  LIKE '30\%'

 

ex)

SELECT *
FROM employees
WHERE lastname LIKE '%o%'

⇒ employees 테이블에서 lastname에 'o'가 들어가는 행을 출력한다.

 

 

 

 

IN (목록을 지정할 수 있는 논리 연산자)

 

SELECT *
FROM 테이블명
WHERE 컬럼명 IN (값1, 값2, ...)

 

ex)

SELECT *
FROM suppliers
WHERE city IN ('Tokyo', 'Osaka')

⇒ suppliers 테이블에서 city의 값이 'Tokyo' 또는 'Osaka'인 행을 출력한다.

 

* 다음과 같이 써도 무방하나, or을 사용했을 경우 요소가 많아지면 문장이 길어짐

SELECT *
FROM suppliers
WHERE Country = 'Tokyo' 
OR Country = 'Osaka'

 

 

 

 

BETWEEN (특정 범위 내에 있는 행만 선택할 수 있는 논리 연산자)

 

SELECT *
FROM 테이블명
WHERE 컬럼명 BETWEEN 조건1 AND 조건2

 

ex)

SELECT *
FROM suppliers
WHERE supplierid BETWEEN 10 AND 15

⇒ customers 테이블에서 customerID의 값이 3에서 5사이인 행만을 출력

* 다음과 같이 써도 무방하다

SELECT *
FROM suppliers
WHERE supplierid >= 10 
AND supplierid <= 15

 

 

 

 

IS NULL (NULL값인 행을 검색)

 

  • NULL, NaN : Not a Number, 숫자가 아님, 값이 없음
  • IS NOT NULL (NULL값이 아닌 행을 검색)

 

ex)

SELECT * 
FROM suppliers
WHERE phone IS NULL

⇒ suppliers 테이블에서 phone의 값이 비어있는 즉 NULL값을 가지는 행을 출력한다.

 

 

 

 


 

 

↘↘↘

 

'📖 STUDY > SQL' 카테고리의 다른 글

[SQL] review_HackerRank  (0) 2022.03.04
[SQL] CEIL, FLOOR, ROUND  (0) 2022.03.04
[SQL] LEFT, RIGHT, SUBSTRING  (0) 2022.03.04
[SQL] ORDER BY  (0) 2022.03.04
[SQL] SELECT, FROM, LIMIT  (0) 2022.03.04

+ Recent posts