MySQL 연산자 총 정리

stone tiger·2025년 2월 5일

MySQL

목록 보기
2/11

🚀 MySQL 연산자 총정리

✅ 1. 산술 연산자 (Arithmetic Operators)

숫자를 계산할 때 사용하는 연산자입니다.

연산자설명예제결과
+덧셈SELECT 10 + 5;15
-뺄셈SELECT 10 - 5;5
*곱셈SELECT 10 * 5;50
/나눗셈SELECT 10 / 4;2.5
%나머지 (MOD 연산)SELECT 10 % 3;1
DIV정수 나눗셈SELECT 10 DIV 4;2

📌 DIV vs / 차이점

  • /소수점까지 반환 (10 / 4 → 2.5)
  • DIV정수 부분만 반환 (10 DIV 4 → 2)

✅ 2. 비교 연산자 (Comparison Operators)

값을 비교할 때 사용됩니다.

연산자설명예제결과
=같음SELECT 10 = 10;1 (TRUE)
!= 또는 <>다름SELECT 10 != 5;1 (TRUE)
>초과SELECT 10 > 5;1 (TRUE)
<미만SELECT 10 < 5;0 (FALSE)
>=이상SELECT 10 >= 10;1 (TRUE)
<=이하SELECT 10 <= 5;0 (FALSE)
<=>NULL-safe 비교SELECT NULL <=> NULL;1 (TRUE)

📌 주의사항

  • =NULL 비교 시 FALSE 반환 (SELECT NULL = NULL;NULL)
  • <=>NULL 비교를 안전하게 수행 (SELECT NULL <=> NULL;1)

✅ 3. 논리 연산자 (Logical Operators)

WHERE 절 등에서 조건을 조합할 때 사용합니다.

연산자설명예제결과
AND (&&)두 조건이 모두 참이면 참SELECT 1 AND 1;1 (TRUE)
OR (``)두 조건 중 하나라도 참이면 참
NOT (!)조건을 반대로SELECT NOT 1;0 (FALSE)

📌 예제

SELECT * FROM users WHERE age >= 18 AND city = 'Seoul';

➡️ age가 18 이상이고 city'Seoul'인 사용자 조회


✅ 4. 할당 연산자 (Assignment Operators)

변수에 값을 할당할 때 사용합니다.

연산자설명예제
:=변수를 선언하고 값 할당SET @var := 100;
=UPDATE문에서 값 할당UPDATE users SET age = 25 WHERE id = 1;

📌 예제

SET @count := 10;
SELECT @count + 5;  -- 결과: 15

✅ 5. 비트 연산자 (Bitwise Operators)

정수 값을 비트 단위로 연산할 때 사용합니다.

연산자설명예제결과 (2진수)
&비트 ANDSELECT 5 & 3;1 (101 & 011 = 001)
``비트 OR`SELECT 5
^비트 XORSELECT 5 ^ 3;6 (101 ^ 011 = 110)
~비트 NOTSELECT ~5;-6
<<왼쪽 시프트SELECT 5 << 1;10 (101 → 1010)
>>오른쪽 시프트SELECT 5 >> 1;2 (101 → 010)

✅ 6. 문자열 연산자 (String Operators)

문자열을 결합하거나 비교할 때 사용됩니다.

연산자설명예제결과
CONCAT()문자열 합치기SELECT CONCAT('Hello', ' ', 'World');'Hello World'
`또는+`문자열 연결 (ANSI SQL 표준)
LIKE패턴 매칭SELECT 'abc' LIKE 'a%';1 (TRUE)
NOT LIKE패턴 불일치SELECT 'abc' NOT LIKE 'b%';1 (TRUE)

📌 LIKE 연산자 패턴

  • % : 0개 이상의 문자 ('a%''a', 'abc', 'apple' 매칭)
  • _ : 정확히 한 개의 문자 ('_b_''abc', 'zbx' 매칭)

✅ 7. 기타 연산자

(1) IN 연산자 (여러 값 중 하나와 일치)

SELECT * FROM users WHERE city IN ('Seoul', 'Busan', 'Incheon');

➡️ 'Seoul', 'Busan', 'Incheon' 중 하나인 사용자 조회

(2) BETWEEN 연산자 (범위 비교)

SELECT * FROM orders WHERE price BETWEEN 1000 AND 5000;

➡️ 1000 ~ 5000 사이의 price 값을 가진 데이터 조회

(3) IS NULL / IS NOT NULL (NULL 값 체크)

SELECT * FROM users WHERE email IS NULL;
SELECT * FROM users WHERE email IS NOT NULL;

🚀 최종 요약

연산자 유형대표 연산자예제
산술 연산자+, -, *, /, %, DIVSELECT 10 + 5;
비교 연산자=, !=, <, >, <=, >=, <=>SELECT age >= 18;
논리 연산자AND, OR, NOTSELECT 1 AND 0;
비트 연산자&, `, ^, ~, <<, >>`
문자열 연산자CONCAT(), LIKE, `
특수 연산자IN, BETWEEN, IS NULLSELECT * FROM users WHERE age BETWEEN 20 AND 30;

📌 가장 많이 사용되는 연산자

  • = / != / <> (비교)
  • AND / OR / NOT (논리)
  • LIKE / IN / BETWEEN (조건 검색)
  • ROUND(), CEIL(), FLOOR() (소수점 처리)

0개의 댓글