CUBRID의 DIFFERENCE는 “위 쿼리 − 아래 쿼리” 입니다.
👉 순서 바꾸면 결과가 완전히 달라집니다.
= A에는 있고 B에는 없는 값
SELECT a
FROM table1
DIFFERENCE
SELECT a
FROM table2;
table1에는 있지만 table2에는 없는 a
SELECT a
FROM table2
DIFFERENCE
SELECT a
FROM table1;
table2에는 있지만 table1에는 없는 a
a
| 1 |
| 2 |
| 3 |
a
| 2 |
| 3 |
| 4 |
1
4
👉 완전히 다름
SELECT a FROM table1
DIFFERENCE
SELECT a FROM table2;
컬럼 수 동일
데이터 타입 호환
-- 기준 데이터 중 빠진 것 찾기
SELECT id
FROM base_table
DIFFERENCE
SELECT id
FROM compare_table;
-- A에는 있는데 B에는 없는 데이터
SELECT a
FROM table1 t1
LEFT JOIN table2 t2
ON t1.a = t2.a
WHERE t2.a IS NULL;
📌 대량 데이터 + 인덱스 있을 땐 이게 더 빠를 수 있음
A DIFFERENCE B ≠ B DIFFERENCE A
항상 **“위 − 아래”**라고 기억하시면 됩니다.
추가로 아래처럼 3개도 이어서 쓸 수 있다고 합니다.
select a from table1
difference
select a from table2
difference
select a from table3
;

| 큐브리드 ini 설정파일 수정, 데이터 추출 성능 개선하기 (0) | 2026.01.14 |
|---|---|
| mysql 조건에서 in 절에는 몇 개까지 넣을 수 있을까? (1) | 2026.01.14 |
| SUM(DECODE(SIGN(point), 1, 1, 0)) 해당 쿼리 뜻은? (0) | 2026.01.14 |
| mysql 테이블 컬럼, 인덱스 구조 보는 명령어는? (0) | 2025.12.20 |
| /*+USE_IDX ORDERED*/ /*+USE_NL ORDERED*/ /*+USE_IDX*/ 인덱스 힌트 차이 (0) | 2025.12.17 |