데이터베이스 & SQL 기초: 첫날 배운 것

발행: (2026년 1월 6일 오전 09:52 GMT+9)
5 min read
원문: Dev.to

Source: Dev.to

데이터베이스란 무엇인가?

데이터베이스는 전자적으로 저장된 관련 데이터의 구조화된 컬렉션으로, 쉽게 접근·관리·업데이트할 수 있도록 조직된 것입니다. 데이터베이스는 개인, 기업, 정부 등 어디서든 사용됩니다. 국가 시민 데이터베이스처럼 크고 복잡할 수도 있고, 친구 목록, 청구서 테이블, 판매 기록처럼 단순할 수도 있습니다.

디지털 방식으로 데이터베이스를 관리하려면 데이터베이스 관리 시스템(DBMS) 을 사용합니다.

DBMS란 무엇인가?

DBMS는 사용자가 데이터베이스를 효율적이고 안전하게 저장·관리·유지보수할 수 있게 해 주는 소프트웨어입니다. 예시:

  • PostgreSQL
  • MySQL
  • MariaDB
  • Oracle Database
  • MongoDB

DBMS가 제공하는 기능:

  • 데이터 저장 및 조직
  • 접근 제어를 통한 보안
  • 백업 및 복구
  • 데이터의 손쉬운 가져오기·내보내기
  • CRUD 작업 지원: 생성(Create), 읽기(Read/조회), 업데이트(Update), 삭제(Delete)

데이터베이스 유형

관계형 데이터베이스(SQL)

관계형 데이터베이스는 행과 열로 구성된 테이블에 데이터를 저장합니다. 데이터가 구조화되어 있으며, 테이블 간 관계가 명확히 정의됩니다. CRUD 작업을 수행하기 위해 SQL(Structured Query Language)을 사용합니다.

예시

  • PostgreSQL
  • MySQL
  • MariaDB
  • Oracle Database

비관계형 데이터베이스(NoSQL)

비관계형 데이터베이스는 전통적인 테이블이 아닌 형태로 데이터를 저장합니다. 예:

  • 키‑값 쌍
  • 문서(JSON, XML)
  • 그래프
  • Blob

SQL 대신 데이터베이스 고유의 쿼리 언어나 API를 사용합니다.

예시

  • MongoDB
  • Firebase Firestore
  • Cassandra
  • Redis

데이터베이스 키 이해하기

가장 중요한 개념 중 하나는 이며, 이는 레코드를 고유하게 식별하고 테이블 간 관계를 정의합니다.

  • Primary Key(기본 키) – 테이블 내 각 레코드를 고유하게 식별하는 키.
  • Natural Keys(자연 키) – 실제 세계의 식별자(예: 학생 번호, 주민등록번호, SSN)와 매핑되는 기본 키.
  • Surrogate Keys(대리 키) – 자연 키가 실용적이지 않을 때 사용되는 인위적으로 생성된 키(예: 자동 증가 ID).
  • Foreign Keys(외래 키) – 다른 테이블의 기본 키를 참조하여 테이블 간 관계를 만드는 키.

오늘 배운 SQL 기본

데이터 선택

SELECT * FROM table;
SELECT column1, column2 FROM table;

WHERE 로 필터링

SELECT * FROM table WHERE field > 9;

AND, OR 같은 논리 연산자를 조합해 더 복잡한 필터를 만들 수 있습니다.

고유값 가져오기

SELECT DISTINCT field FROM table;

행 개수 세기

SELECT COUNT(*) FROM table;

별칭 사용

SELECT field AS Total FROM table;

문자열 다루기

SQL에서는 문자열 리터럴에 작은 따옴표를 사용합니다.

SELECT * FROM table WHERE name = 'John';

LIKE 로 패턴 매칭

SELECT * FROM table WHERE name LIKE 'T%';

문자열 길이와 파싱

SELECT * FROM table WHERE LENGTH(name) > 3;
SELECT * FROM table WHERE LEFT(name, 1) = 'T';

숫자 다루기

값 반올림

SELECT ROUND(value, 2) FROM table;

모듈로 연산으로 짝수 찾기

SELECT * FROM table WHERE MOD(id, 2) = 0;

마무리 생각

오늘 가장 인상 깊었던 점은 기본적인 SQL 쿼리만으로도 얼마나 강력한지를 깨달은 것입니다. 간단한 SELECT 문만으로도 데이터에 대한 의미 있는 질문을 할 수 있습니다. 첫 날을 통해 탄탄한 기초를 다졌으며, 앞으로 테이블을 만들고, 데이터를 삽입하며, 실제 데이터베이스 구조를 설계하는 것이 기대됩니다.

Back to Blog

관련 글

더 보기 »