본문 바로가기
프로그래밍/SQL, Hive, SAS 관련 정보

[SQL 기초] SQL 연산자 우선순위

by TrillionNT 2024. 10. 31.

2025.02.24 - [프로그래밍/SQL, Hive, SAS 관련 정보] - [SQL] Table of Contents


SQL의 연산자 우선순위에 대해서 알아봅시다. 

 

  • 괄호 ()
  • 산술 연산자: *, /, +, -
  • 비교 연산자: =, <, >, <=, >=, <> , SQL비교연산자( Between A AND B, IN (LIST), LIKE '비교문자열' , IS NULL )
  • 논리 연산자: NOT > AND > OR

다른 연산자들은 쉽게 이해하실 것 같고

SQL 비교 연산자들에 대해서만 간단히 알아볼까요?

 

예시1) salary가 50,000에서 100,000 사이인 직원들을 조회합니다.

SELECT * FROM employees
WHERE salary BETWEEN 50000 AND 100000;

 

참고) SQL에서는 10 < col < 30과 같은 식으로 부등호를 연달아 사용하는 것은 표준 SQL 문법으로는 불가능합니다. 하지만 일부 데이터베이스 관리 시스템(DBMS)에서는 특정 방식으로 유사한 표현을 지원하거나, 다른 방법으로 동일한 결과를 얻을 수 있습니다.

 

예시2) department_id가 10, 20, 30 중 하나에 해당하는 직원들을 조회합니다.

SELECT * FROM employees
WHERE department_id IN (10, 20, 30);

 

물론 위의 코드를 OR 연산자를 이용할 수도 있지만 그것보다는 더 간단하게 코딩할 수 있습니다. 

 

예시3) customer_name이 'J'로 시작하는 고객들을 조회합니다.

SELECT * FROM customers
WHERE customer_name LIKE 'J%';

 

 

LIKE 연산자를 사용할 때 같이 많이 쓰이는 wildcard는 아래와 같습니다. 

  • %: 0개 이상의 문자를 대체
  • _: 정확히 한 문자를 대체

예시4) delivery_date가 NULL인 주문을 조회합니다.

SELECT * FROM orders
WHERE delivery_date IS NULL;