본문 바로가기
PostgreSQL

PostgreSQL 기초 문법 총정리: 초보 개발자를 위한 쿼리 입문 가이드

by devdrawer 2026. 2. 9.

PostgreSQL 기초 문법, 왜 중요할까?

데이터베이스 시장에서 PostgreSQL은 강력한 오픈소스 관계형 데이터베이스(RDBMS)로 자리 잡고 있습니다. 표준 SQL을 가장 잘 준수하며 확장성이 뛰어나기 때문에 많은 기업의 백엔드 시스템에서 채택하고 있죠. 오늘은 PostgreSQL의 가장 기본이 되는 핵심 문법들을 정리해 보겠습니다.

 

1. 데이터베이스 및 테이블 생성하기

데이터를 담기 위해서는 먼저 그릇이 되는 데이터베이스와 테이블을 만들어야 합니다. PostgreSQL에서는 CREATE 명령어를 사용합니다.

-- 데이터베이스 생성 CREATE DATABASE my_blog_db;

-- 테이블 생성 CREATE TABLE users ( user_id SERIAL PRIMARY KEY, username VARCHAR(50) NOT NULL, email TEXT UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );

주요 데이터 타입 설명

  • SERIAL: 숫자가 자동으로 증가하는 자동 번호 매기기 타입입니다.
  • VARCHAR(n): 제한된 길이의 문자열을 저장합니다.
  • TEXT: 길이 제한이 없는 문자열을 저장할 때 유용합니다.
  • TIMESTAMP: 날짜와 시간을 기록할 때 사용합니다.

2. 데이터 조작의 핵심: CRUD 문법

데이터베이스의 기본 기능인 CRUD(생성, 조회, 수정, 삭제)를 수행하는 문법입니다. 실무에서 가장 많이 사용되는 영역입니다.

데이터 삽입 (INSERT)

INSERT INTO users (username, email) VALUES ('gemini', 'gemini@example.com');

데이터 조회 (SELECT)

특정 조건에 맞는 데이터를 찾을 때는 WHERE 절을 활용하며, ORDER BY를 통해 정렬할 수 있습니다.

-- 모든 사용자 조회 SELECT * FROM users;

-- 특정 조건 및 정렬 SELECT username, email FROM users WHERE username = 'gemini' ORDER BY created_at DESC;

데이터 수정 (UPDATE) 및 삭제 (DELETE)

주의: 수정과 삭제 시에는 반드시 WHERE 절을 확인해야 합니다. 조건을 누락하면 테이블 전체 데이터가 변경되거나 삭제될 위험이 있습니다.

-- 데이터 수정 UPDATE users SET email = 'new_email@example.com' WHERE user_id = 1;

-- 데이터 삭제 DELETE FROM users WHERE user_id = 1;

3. 자주 쓰이는 유용한 제약 조건과 함수

데이터의 무결성을 유지하기 위해 PostgreSQL은 다양한 제약 조건을 제공합니다.

  • NOT NULL: 컬럼에 빈 값을 허용하지 않습니다.
  • UNIQUE: 중복된 값을 허용하지 않습니다.
  • DEFAULT: 값이 입력되지 않았을 때 기본값을 설정합니다.

 

마치며: PostgreSQL 숙련도를 높이는 방법

오늘 알아본 기초 문법은 PostgreSQL 활용의 시작일 뿐입니다. 인덱싱(Indexing), 조인(Join), 그리고 복잡한 집계 함수를 익히면 대규모 데이터를 다루는 데 큰 도움이 됩니다. 직접 쿼리를 입력해 보며 결과를 확인하는 연습이 가장 중요합니다.