본문 바로가기
UMC스터디

SQL 기본 정리

by devnewr1n 2025. 3. 27.

 

 

SQL이란?

구조적 쿼리 언어(SQL)관계형 데이터베이스에 정보를 저장하고 처리하기 위한 프로그래밍 언어이다.

 

여기서 관계형 데이터베이스(RDB)는 정보를 표 형식으로 저장하며, 행과 열은 다양한 데이터 속성과 데이터 값 간의 다양한 관계를 나타낸다. 이때 SQL 문을 사용하여 데이터베이스에서 정보를 저장, 업데이트, 제거, 검색 및 검색할 수 있다. 즉 관계형 데이터베이스(RDB)에서 DB를 다루기 위해 사용하는 것이 SQL이다.

참고로 RDBMS는 이러한 관계형 데이터베이스(RDB)를 다룰 수 있는 소프트웨어이다. 그 예로 mysql, mariaDB, postgreSQL 등이 있는 것이다.

 

쿼리란?

쿼리(Query)란 직역하면 질문, 문의하다하는 뜻으로 질문에 대한 답을 요청하는 것이다.

즉, 쿼리는 데이터베이스DB에 사용자가 요청한 특정 데이터를 보여달라는 요청을 이야기한다. 

 

쿼리문을 작성한다

= DB에서 원하는 정보를 가져오는 코드를 작성한다는 말이다.

 

 

DB 쿼리문

1. DDL (정의어)

-CREATE, ALTER, DROP, TRUNCATE

 

2. DML (수정)

-SELECT, INSERT, UPDATE, DELETE, MERGE

 

3. DCL (권한 제어)

-GRANT, REVOKE

 

4. TCL(명령어 제어)

-COMMIT, ROLLBACK, SAVEPOINT

 

 

주의) 테이블에서 정보를 select 하기 전에, USE로 데이터베이스 선택을 먼저 해야 한다.

 

SELECT 문의 기본 형식

SELECT 열_이름 FROM 테이블_이름
    WHERE 조건식
    GROUP BY 열_이름
    HAVING 조건식
    ORDER BY 열_이름
    LIMIT 숫자

 

FROM

원래 FROM 뒤에 들어가는 테이블 이름은 스키마명(DB명).테이블 이다.

그렇지만 USE 문으로 DB를 지정해주었다면 테이블명만 명시해도 된다.

 

WHERE

뒤에는 관계 연산자/ 논리 연산자 모두 사용 가능하다.

BETWEEN

특정 범위에 해당하는 데이터를 조회할 수 있다.

IN

특정 값이 포함된 데이터 조회 가능

WHERE location IN('상도', '대방', '설입');
--이 셋 중 하나에만 속하면 해당하기 때문에 조회 가능

LIKE

문자열의 일부 글자 검색

SELECT * FROM user WHERE name LIKE '가___'
--name 컬럼 값이 '가'로 시작하는 4글자 데이터 조회

SELECT * FROM user WHERE name LIKE '가%'
--컬럼 값이 '가'로 시작하는 모든 데이터 조회

SELECT * FROM user WHERE name LIKE '%가'
--컬럼 값이 '가'로 끝나는 모든 데이터 조회

SELECT * FROM user WHERE name LIKE '%가%'
--컬럼 값에 '가'가 들어가는 모든 데이터 조회

 

 

서브 쿼리 

하나의 SQL 문 안에 포함되어 있는 또 다른 SQL 문을 말한다. ()괄호 안에 있는 쿼리

SELECT 문만 가능

 

ORDER BY 컬럼명

데이터를 정렬한다.

-ASC : 오름차순 (생략시 ASC가 기본값!)

-DESC : 내림차순

,콤마로 여러 정렬 조건 지정 가능

 

LIMIT

출력 개수 제한

페이징 설정할 때 활용한다.(OFFSET과 조합하면 OFFSET based 페이징)

 

DISTINCT 

중복 데이터 제거

컬럼 명 앞에 붙이면 중복된 값이 한개만 출력된다

 

AS 

별칭(alias), 그냥 내 임의로 짓는 명칭. 생략 가능하다.

 

집계함수

SUM() : 합계

AVG() : 평균

COUNT() : 행의 개수

COUNT(*)는 모든 데이터 개수를 세고, NULL값이 포함되어 있어도 카운트된다.

MAX(), MIN() : 최대값, 최소값

ROUND(~,2) : 소수점 2의 자리까지 반올림

(집계함수 내에서 사칙 연산도 가능)

 

HAVING

: 그룹 조건

그룹화된 데이터에 대해서 조건을 제한한다. 따라서 GROUP BY 뒤에 와야 한다.

 

참고로,

포함관계는 다음과 같다

database(DB) < table < 데이터(행과열)

datagrip 쓸 때는

ctrl + 엔터 해야 바로 실행된다.

 

 

출처


 

쿼리 query란 무엇일까?

쿼리(Query)란? 쿼리(Query)란 직역하면 질문, 문의하다하는 뜻으로 질문에 대한 답을 요청하는 것이다. 쿼리는 데이터베이스DB에 사용자가 요청한 특정 데이터를 보여달라는 요청을 이야기한다. 쿼

kwonkai.tistory.com

 

[MySQL] - SQL 기본 문법 정리 - (SELECT, WHERE, ORDER BY ..)

- SELECT 문의 기본 형식은 다음과 같다.SELECT 열_이름 FROM 테이블_이름 WHERE 조건식 GROUP BY 열_이름 HAVING 조건식 ORDER BY 열_이름 LIMIT 숫자 📌 USE - 스키마 (데이터베이스) 선택-- USE '스키마명' USE market

rachel0115.tistory.com

 

'UMC스터디' 카테고리의 다른 글

JPQL과 QueryDSL  (1) 2025.06.13
도메인 설계와 N+1 문제  (0) 2025.06.13
Spring Boot의 핵심 개념 정리  (0) 2025.04.08
서버 관련 공부  (0) 2025.03.21
TCP/IP 4계층 모델을 활용한 홈페이지 접속 방법 설명  (0) 2025.03.21