학습 자료

데이터베이스와 소통하는 언어, SQL

SQL(Structured Query Language)은 관계형 데이터베이스 관리 시스템(RDBMS)에서 데이터를 정의, 생성, 읽기, 수정, 삭제할 때 사용되는 표준 언어입니다.

1970년대 IBM의 연구소에서 개발된 이후로 데이터베이스 관리를 위한 필수 언어가 되었으며, 현재까지도 다양한 관계형 데이터베이스에 사용되고 있습니다.

SQL은 어떤 특징을 갖나요?

SQL 쿼리(Query, 질의)를 바탕으로 하는 언어로서 데이터베이스의 데이터를 쉽게 접근하고 조작할 수 있도록 돕습니다. SQL의 주요 특징은 다음과 같습니다.

  • ANSI(미국 표준화 기구)와 ISO(국제 표준화 기구)에 의해 표준화되어 있어 여러 데이터베이스 시스템 간에 호환성을 갖습니다.
  • 데이터베이스의 테이블 및 기타 객체들을 정의하고, 데이터를 추가, 수정, 삭제할 수 있도록 합니다.
  • SQL은 트랜잭션(Transction, 하나의 논리적 작업을 처리하는 데이터베이스 연산 집합)과 같은 메커니즘을 제공하여 데이터의 일관성무결성을 보장합니다.

SQL은 어떻게 구성되나요?

SQL은 크게 데이터베이스의 설계를 담당하는 DDL(Data Definition Language)과 데이터 조작을 담당하는 DML(Data Manipulation Language)로 나뉩니다.

1. 데이터 정의 언어(DDL)

DDL(Data Definition Language)은 데이터베이스 스키마(Schema, 데이터베이스의 구조와 설계를 정리한 지도)와 관련된 명령어들을 정의하는 언어입니다. 주로 다음과 같은 데이터베이스 요소들을 정의합니다.

  • 테이블(Table): 데이터를 행과 열로 구성하여 저장하는 기본 데이터 구조
  • 인덱스(Index): 데이터 검색 속도를 높이기 위해 사용하는 도구
  • 뷰(View): 쿼리 결과를 표시하는 가상 테이블

DDL의 주요 명령어는 다음과 같습니다.

  • CREATE: 테이블, 인덱스, 뷰 등을 생성합니다.
  • ALTER: 기존 데이터베이스 객체의 구조를 변경합니다.
  • DROP: 데이터베이스 객체를 삭제합니다.

2. 데이터 조작 언어(DML)

DML(Data Manipulation Language)은 데이터베이스 내의 데이터를 조작하기 위한 명령어들로 구성됩니다. DML의 주요 명령어는 다음과 같습니다.

  • INSERT: 새로운 레코드를 테이블에 추가합니다.
  • UPDATE: 기존 레코드를 수정합니다.
  • DELETE: 특정 조건에 맞는 레코드를 삭제합니다.
  • SELECT: 특정 조건에 맞는 데이터를 검색하여 조회합니다.

SQL 쿼리는 일반적으로 데이터베이스 테이블에서 특정 데이터를 검색하기 위해 작성됩니다. SQL 쿼리의 기본 구조는 SELECT, FROM, WHERE 등으로 이루어져 있습니다.

기본적인 SQL 구조
SELECT column1, column2, ... FROM table_name WHERE condition;
  • SELECT: 반환하고자 하는 열을 지정합니다.
  • FROM: 데이터를 가져올 테이블을 지정합니다.
  • WHERE: 특정 조건에 맞는 데이터를 필터링합니다.

SQL는 어떻게 활용할 수 있나요?

SQL을 활용하면 대용량 데이터베이스에서 특정 정보를 쉽게 검색하고 조작할 수 있습니다.

예를 들어, 데이터베이스에서 재고가 10개 이상 남은 제품제품명재고 수량을 검색하고 싶다면 다음과 같은 SQL 쿼리를 사용할 수 있습니다.

SQL 예시
SELECT product_name, stock FROM products WHERE stock >= 10;

위 쿼리는 제품 목록(products)에서 재고가 10개 이상(stock >= 10)인 항목들의 제품명(product_name)과 재고 수량(stock)을 검색하는 SQL 쿼리입니다.

SQL은 데이터베이스를 다루는 데 필수적, 개발자가 아닌 사람들에게도 유용한 범용적인 언어입니다. SQL을 배우면 대규모 데이터를 저장하고 관리하는 조직이나 기관의 데이터베이스를 효율적으로 활용할 수 있습니다.

Quiz
0 / 1

빈칸에 가장 적절한 명령어는 무엇일까요?

SQL에서 특정 조건에 맞는 데이터를 검색하여 조회할 때는 명령어를 사용합니다.
INSERT
UPDATE
DELETE
SELECT

학습 자료

AI 튜터

디자인

업로드

수업 노트

즐겨찾기

도움말

코드 에디터

코드 실행
코드 생성

DB 테이블 구조

실행 결과