들어가며
MySQL로 프로그래머스에서 문제를 풀이하다보니, 연산자(Operator)부터 차근차근 하나씩 문법을 정리해보면 좋을 것 같다고 생각이 들었습니다. 따라서, 이 포스팅에서는 MySQL의 연산자인 산술 연산자, 비교 연산자, 논리 연산자, 비트연산자에 대해 다룹니다.
❏ 산술 연산자
산술 연산자는 기본적인 수학 연산을 수행합니다.
- +, -, *, /, % : 덧셈, 뺄셈, 곱셈, 나눗셈, 나머지
SELECT 10 + 5; --15
SELECT 20 - 7; --13
SELECT 6 * 4; --24
SELECT 15 / 3; --5
SELECT 17 % 5; --2
- DIV : 왼쪽 피연산자를 오른쪽 피연산자로 나눈 후, 소수 부분을 버림
- MOD : 왼쪽 피연산자를 오른쪽 피연산자로 나눈 후, 그 나머지를 반환함
SELECT 10 DIV 4; --2
SELECT 10 MOD 3; --1
❏ 비교 연산자
비교 연산자는 두 값을 비교하여, TRUE, FALSE, NULL을 반환합니다.
= | 같음 |
<> 또는 != | 다름 |
< | 작음 |
> | 큼 |
<= | 작거나 같음 |
>= | 크거나 같음 |
IS NULL / IS NOT NULL | NULL인지 확인 / NULL이 아닌지 확인 |
BETWEEN | 두 값 사이에 있는지 확인 |
IN / NOT IN | 목록 중 하나와 일치하는지 확인 / 전부 일치하지 않는지 확인 |
LIKE | 패턴 매칭 |
SELECT 5 == 5; --1
SELECT 10 <> 5; --1
SELECT 3 < 7; --1
SELECT 8 > 12; --0
SELECT 5 BETWEEN 1 AND 10; --1
SELECT 'APPLE' IN ('BANANA', 'APPLE', 'ORANGE'); --1
SELECT 'APPLE' NOT IN ('BANANA', 'APPLE', 'ORANGE'); --0
SELECT 'HELLO' LIKE 'HE%'; --1
❏ 논리 연산자
- AND, && : 모든 조건이 TRUE이면, TRUE
- OR, || : 하나 이상의 조건이 TRUE이면, TRUE
- NOT, ! : 조건의 결과를 반전
- XOR : 논리식이 서로 다르면 TRUE
SELECT (5 > 3) AND (2 < 4); --1
SELECT (5 > 7) OR (3 = 3); --1
SELECT NOT (5 = 5); --0
SELECT (5 > 1) XOR (5 > 7); --1
❏ 비트 연산자
- & : 비트 AND
- | : 비트 OR
- ^ : 비트 XOR
- ~ : 비트 NOT (1이면 0으로, 0이면 1로)
- << : 왼쪽 시프트
- >> : 오른쪽 시프트
SELECT 5 & 3; -- 1 (0101 & 0011 = 0001)
SELECT 5 | 3; -- 7 (0101 | 0011 = 0111)
SELECT 5 ^ 3; -- 6 (0101 ^ 0011 = 0110)
SELECT 5 << 1; -- 10 (0101 -> 1010)
SELECT 5 >> 1; -- 2 (0101 -> 0010)
반응형