SQL 종류와 차이

J. Hwang·2025년 5월 1일

SQL practice

목록 보기
1/18

SQL은 DBMS에 따라 각기 다른 방언(dialect)이 존재한다.
ANSI SQL(표준 SQL)을 기반으로 하지만, 기능, 문법, 내장 함수 등이 약간씩 다르다.

SQL 종류

DBMS주요 특징주로 사용되는 곳
MySQL오픈 소스, 가볍고 빠름웹 개발
PostgresSQL표준 SQL 준수율이 높고 확장성이 강하다데이터 분석, GIS, 대규모 시스템
Oracle안정성이 높고 기능이 풍부함대기업, 금융, 정부기관 등
SQL server (T-SQL)Microsoft의 SQL윈도우 기반 기업 환경
SQLite서버 없이 파일 기반 DB, 매우 경량모바일 앱, 임베디드 시스템
MariaDBMySQL의 fork, 오픈 소스 유지MySQL 대체용
IBM Db2메인 프레임 및 대기업 시스템용금융/보험, 레거시 시스템
Amazon Redshift / Google BigQuery클라우드 기반, 대용량 데이터 분석데이터 웨어하우스
Snowflake SQL완전 클라우드 기반, 높은 확장성데이터 레이크, BI 분석

MySQL vs Oracle

백준에서는 MySQL과 Oracle로 SQL 코딩테스트 문제를 풀게 되어 있으므로 이 둘을 비교해보자.

MySQLOracle
문자열 연결CONCAT('a', 'b')'a' || 'b'
자동 증가 키AUTO_INCREMENTSEQUENCE + TRIGGER or IDENTITY (12c 이후)
현재 날짜/시간NOW() or CURRENT_TIMESTAMPSYSDATE or SYSTIMESTAMP
Top n queryLIMIT n서브쿼리 + WHERE ROWNUM <= n, FETCH FIRST n ROWS ONLY (12c 이후)
이중 따옴표 " 처리문자열컬럼/식별자
서브쿼리 별칭AS 생략 가능AS 생략 가능하지만 일부 구문에서 필수
NULL 처리IFNULL(exp1, exp2)NVL(exp1, exp2)
조건문 (CASE 대체)IF(exp, val1, val2)DECODE(A, B, X, Y)*
데이터형INT, VARCHAR, TEXT, DATETIME 등NUMBER, VARCHAR2, CLOB, DATE 등
BOOLEAN 타입없음(TINYINT(1)로 대체)없음(숫자나 CHAR로 처리)
AUTO COMMITOX (명시적인 COMMIT 필요)

* DECODE(A, B, X, Y) : A=B이면 X를 출력, A≠B이면 Y를 출력

profile
Let it code

0개의 댓글