자주 사용하는 쿼리문과 관련하여 정리를 해보려고 한다. 쿼리문의 종류는 다른 언어들에 비해 양이 많은 편은 아니다. 하지만 공부하다보니 많은 듯 하다. 또한, 비슷한 역할을 하는 쿼리문이 존재하다보니 사용할 때 헷갈리는 것도 많아 작성을 하려고 한다.
쿼리문 실행 순서 & 작성 순서
쿼리문을 실행할 때에는 실행 순서가 존재한다. 작성순서가 다르다고 해서 작동이 되지 않는 것은 아니다.
하지만, 실행순서를 적절하게 조정하면 성능을 개선시킬 수 있다.
쿼리문 실행 순서와 작성 순서는 서로 다르기 때문에 각각 봐두는 것이 좋다.
# 쿼리문 실행 순서
# 쿼리문 작성 순서
작성 순서와 실행 순서는 일반적인 규칙이며, 쿼리의 목적이나 복잡성에 따라 달라질 수 있다. 작성 순서를 따를 때 쿼리의 의도와 구문이 명확하게 전달되고, 실행 순서를 따를 때 데이터베이스가 효율적으로 쿼리를 처리할 수 있다.
자주 사용되는 쿼리문
데이터 조회
SELECT [열1, 열2, ...]
FROM [테이블명];
데이터 삽입
INSERT INTO [테이블명] ([열1, 열2, ...])
VALUES ([값1, 값2, ...]);
데이터 수정
UPDATE [테이블명]
SET [열1 = 값1, 열2 = 값2, ...]
WHERE [조건];
데이터 삭제
DELETE FROM [테이블명]
WHERE [조건];
데이터 필터링
SELECT [열1, 열2, ...]
FROM [테이블명]
WHERE [조건];
데이터 정렬
SELECT [열1, 열2, ...]
FROM [테이블명]
ORDER BY [정렬열] [ASC|DESC];
데이터 그룹화 및 집계
SELECT [열, 집계 함수(열)]
FROM [테이블명]
GROUP BY [열];
조건문
WHERE [조건] -- 데이터 필터링을 위한 조건 지정
AND -- 여러 개의 조건을 모두 만족하는 데이터 선택
OR -- 여러 개의 조건 중 하나 이상을 만족하는 데이터 선택
IN -- 여러 개의 값 중 하나와 일치하는 데이터 선택
NOT -- 조건을 부정하여 데이터 선택
DISTINCT(중복 제거)
SELECT DISTINCT [열]
FROM [테이블명];
서브쿼리(중첩 쿼리)
SELECT [열1, 열2, ...]
FROM [테이블명]
WHERE [열] IN (SELECT [열] FROM [다른 테이블]);
LIKE(포함된 값 찾기)
SELECT [열]
FROM [테이블명]
WHERE [열] LIKE '드%';
SELECT [열]
FROM [테이블명]
WHERE [열] LIKE '드__';
BETWEEN(사이 값 찾기)
SELECT [열]
FROM [테이블명]
WHERE [열] BETWEEN [값1] AND [값2];
집계 함수
GROUP BY와 자주 사용되며 그룹화하여 출력하고자 하는 열의 합, 수, 평균 등을 구할 때 함꼐 사용된다.
COUNT -- 행의 개수
SUM -- 합계
AVG -- 평균
MAX -- 최대값
MIN -- 최소
트랜잭션
BEGIN TRANSACTION -- 트랜잭션 시작
COMMIT -- 변경 사항을 저장하고 트랜잭션 종료
ROLLBACK -- 변경 사항을 취소하고 트랜잭션 종료
[SQL] 트랜잭션(Transaction)이란? / 트랜잭션의 특징 알아보기
SQL은 DBMS(Database Management System)에서 사용되는 표준 질의어로 데이터의 저장, 조회, 수정, 삭제 등을 처리하는데 사용된다. 이런 작업을 수행하는 동안 데이터의 일관성과 안전한 처리를 보장하기
luminousolding.tistory.com
이외에도 엄청 많은 함수들이 존재한다.
JOIN과 관련된 함수는 이해하는데 헷갈리는 것이 있어 따로 정리를 해볼까 한다.
🔗참고 링크
MySQL Tutorial
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
www.w3schools.com
MySQL Sample Database
This page provides you with a MySQL sample database that helps you to practice with MySQL effectively and quickly. You can download the sample database and load it into your MySQL Server.
www.mysqltutorial.org
'LANGUAGE > MySQL' 카테고리의 다른 글
[MySQL] Window11 MySQL 설치하기 / Developer default 안 보일 때 해결 방법 (0) | 2023.07.23 |
---|---|
[MySQL] 필드 기본값(Default) 설정하기 (1) | 2023.06.04 |
[SQL] 트랜잭션(Transaction)이란? ACID원칙 (1) | 2023.05.26 |
[SQL] 데이터베이스 언어: DDL, DML, DCL, TCL의 이해와 활용 (0) | 2023.05.25 |
[DATABASE] 데이터 베이스 개체 알아보기 / 인덱스(INDEX), 뷰(VIEW), 스토어드 프로시저(STORED PROCEDURE), 트리거(TRIGGER) 등 (0) | 2023.05.25 |