표현식 연산자
마지막 업데이트: 2026. 10. 27.표현식 작성할 때 연산자를 사용하여 값을 계산하고, 입력을 비교하고, 조건을 결합합니다.
다음 시맨틱은 이동 작업 표현식에 적용됩니다.클라우드 데이터 플랫폼에서 실행되는 표현식은 해당 플랫폼의 시맨틱을 사용합니다.연산자 앞뒤에 공백을 두고 $HIRE_DATE < '2026-10-08'와 같이 텍스트 및 날짜 상수를 따옴표로 묶으십시오.
산술 연산자
| 연산자 | 의미 | 예제 및 결과 |
|---|---|---|
+
|
두 피연산자를 더합니다. | 2 + 3은(는) 5을(를) 반환합니다. |
-
|
왼쪽 피연산자에서 오른쪽 피연산자를 뺍니다.앞에 오는 마이너스 기호는 값의 부호를 반전시킵니다. | 5 - 2은(는) 3을(를) 반환합니다. |
*
|
피연산자를 곱합니다. | 3 * 4은(는) 12을(를) 반환합니다. |
/
|
왼쪽 피연산자를 오른쪽 피연산자로 나눕니다.정수 나눗셈은 0 방향으로 버림합니다.실수 피연산자는 소수 결과를 유지합니다.0으로 나누면 NULL이 반환됩니다. | 7 / 2은(는) 3을(를) 반환합니다; 7.0 / 2은(는) 3.5을(를) 반환합니다. |
%
|
두 피연산자를 모두 정수로 변환하고 나눗셈의 나머지를 반환합니다.이는 백분율 계산이 아닙니다. | 7 % 3은(는) 1을(를) 반환합니다. |
비교 연산자
비교 연산은 참일 경우 1을, 거짓일 경우 0을 반환합니다.NULL과의 일반적인 비교는 NULL을 반환합니다. 누락된 값을 확인하려면 IS 또는 IS NOT를 사용하십시오.
| 연산자 | 의미 | 예제 및 결과 |
|---|---|---|
=
|
동등성을 테스트합니다. | 3 = 3은(는) 1을(를) 반환합니다. |
!=
|
불일치를 테스트합니다. | 3 != 4은(는) 1을(를) 반환합니다. |
<>
|
대체 부등 연산자입니다. | 3 <> 3은(는) 0을(를) 반환합니다. |
<
|
왼쪽 값이 더 작은지 테스트합니다. | 2 < 3은(는) 1을(를) 반환합니다. |
<=
|
보다 작거나 같은지 테스트합니다. | 3 <= 3은(는) 1을(를) 반환합니다. |
>
|
왼쪽 값이 더 큰지 테스트합니다. | 4 > 3은(는) 1을(를) 반환합니다. |
>=
|
보다 크거나 같은지 검사합니다. | 3 >= 3은(는) 1을(를) 반환합니다. |
IS
|
NULL을 반환하지 않고 동등성을 테스트합니다.두 NULL 값은 서로 같지만, NULL 값과 NULL이 아닌 값은 같지 않습니다. | NULL IS NULL은(는) 1을(를) 반환합니다. |
IS NOT
|
NULL을 반환하지 않고 같지 않음을 검사합니다. | NULL IS NOT 3은(는) 1을(를) 반환합니다. |
논리 및 조건부 연산자
| 연산자 | 의미 | 예제 및 결과 |
|---|---|---|
AND
|
두 조건이 모두 참일 때 True입니다.한 피연산자가 false이면 다른 피연산자가 NULL이더라도 결과는 false가 됩니다. | (3 > 2) AND (4 < 3)은(는) 0을(를) 반환합니다. |
OR
|
두 조건 중 하나라도 참이면 True입니다.한 피연산자가 true이면 다른 피연산자가 NULL이더라도 결과는 true가 됩니다. | (3 > 2) OR (4 < 3)은(는) 1을(를) 반환합니다. |
IN
|
괄호로 묶인 목록의 포함 여부를 검사합니다.일치하는 값이 없고 목록에 NULL이 포함되어 있으면 NULL을 반환합니다.빈 목록은 왼쪽 피연산자가 NULL인 경우를 포함하여 0을 반환합니다. | 2 IN (1, 2, 3)은(는) 1을(를) 반환합니다; 4 IN (1, NULL)은(는) NULL을 반환합니다. |
CASE
|
일치하는 첫 번째 브랜치를 반환합니다.기준 값을 각 WHEN 값과 비교합니다.없으면 각 WHEN 조건을 테스트합니다.일치하는 분기가 없으면 ELSE를 사용하고, ELSE가 없으면 NULL을 사용합니다. | CASE WHEN 5 > 3 THEN 'High' ELSE 'Low' END은(는) 'High'을(를) 반환합니다.CASE 2 WHEN 1 THEN 'One' WHEN 2 THEN 'Two' END은(는) 'Two'을(를) 반환합니다. |
문자열 및 패턴 연산자
| 연산자 | 의미 | 예제 및 결과 |
|---|---|---|
||
|
텍스트 값을 연결합니다.NULL 피연산자는 NULL을 생성합니다. | 'John' || ' ' || 'Smith'은(는) 'John Smith'을(를) 반환합니다. |
LIKE
|
왼쪽 문자열을 오른쪽 패턴과 비교합니다. %은(는) 0개 이상의 문자와 일치하며, _은(는) 1개 문자와 일치합니다.기본적으로 ASCII 대소문자는 무시하지만, 비 ASCII 대소문자 차이는 무시하지 않습니다.ESCAPE는 리터럴 와일드카드를 위한 단일 문자를 지정합니다. |
'Alice' LIKE 'A%'은(는) 1을(를) 반환합니다.'10%' LIKE '10!%' ESCAPE '!' 1을(를) 반환합니다. |
GLOB
|
Unix 스타일 패턴을 사용하는 대소문자 구분 일치입니다. *은(는) 0개 이상의 문자와 일치하며,?은 하나와 일치하며, 대괄호는 문자 집합을 정의합니다. |
'file.csv' GLOB '*.csv'은(는) 1을(를) 반환합니다; 'File.CSV' GLOB '*.csv'은(는) 0을(를) 반환합니다. |
MATCH
|
애플리케이션에서 정의한 match() 함수에 위임합니다.사용 가능한 구현이 필요합니다. 기본 SQLite 구현은 오류를 발생시킵니다. |
'Quarterly sales' MATCH 'sales'에서는 구문을 보여줍니다.결과는 애플리케이션 구현에 따라 달라집니다. |
REGEXP
|
애플리케이션에서 정의한 regexp() 함수에 위임합니다.SQLite는 기본적으로 이 함수를 제공하지 않습니다. |
'ABC123' REGEXP '^[A-Z]+[0-9]+$'에서는 구문을 보여줍니다.구현이 없으면 평가에 실패합니다. |
비트 연산자
이러한 이항 연산자는 논리 조건이 아닌 정수 비트에 적용됩니다. 편집기에서 이를 논리 범주에 나열하더라도 |은(는) 비트 단위 OR을 의미합니다.
| 연산자 | 의미 | 예제 및 결과 |
|---|---|---|
<<
|
왼쪽 정수를 오른쪽 피연산자의 비트 수만큼 왼쪽으로 시프트합니다. | 3 << 1은(는) 6을(를) 반환합니다. |
>>
|
왼쪽 정수를 오른쪽 피연산자의 비트 수만큼 오른쪽으로 시프트합니다. | 8 >> 1은(는) 4을(를) 반환합니다. |
&
|
비트 단위 AND: 두 피연산자 모두 해당 비트가 설정된 경우에만 결과 비트를 설정합니다. | 6 & 3은(는) 2을(를) 반환합니다. |
|
|
비트 단위 OR: 피연산자 중 어느 하나라도 해당 비트가 설정되어 있으면 결과 비트를 설정합니다. | 6 | 3은(는) 7을(를) 반환합니다. |
평가 순서 및 결측값
위의 이항 연산자의 경우, 가장 높은 것부터 가장 낮은 것까지의 우선순위는 연결, 곱셈, 나눗셈 및 나머지, 덧셈과 뺄셈, 비트 단위 연산, 순서 비교, 동등성 및 패턴 검사, AND, 그다음 OR입니다.동일한 수준의 연산자는 왼쪽에서 오른쪽으로 평가됩니다.괄호는 이 순서보다 우선 적용됩니다: (2 + 3) * 4은(는) 20를 반환하는 반면, 2 + 3 * 4은(는) 14를 반환합니다.
대부분의 연산자는 피연산자가 NULL인 경우 NULL을 반환합니다.위에서 설명한 예외에는 IS, IS NOT 및 특정 AND, OR, IN 사례가 포함됩니다.누락된 값에 대체 값이 있어야 하는 경우 $COALESCE을(를) 사용하십시오.표현식 함수을(를) 참조하십시오.