[SQL 실전] #01 SQL JOIN 실전 가이드, 다중 조인부터 SELF JOIN까지
·
Database/SQL
안녕하세요 토스트데브입니다 😊 SQL 기초 게시글 SQL #01 ~ SQL #11을 통해서 SQL의 기초와 문법에 대해 배워보았습니다. 이번 글 부터는 이제는 실무에서 더 자주마주치는 SQL에 대해 조금 더 분석해 볼게요!SQL 기초에서 JOIN 문법을 익혔다면, 이제는 실무에서 더 자주 마주치는 JOIN 심화 활용법으로 넘어갈 차례입니다.이번 글에서는 다중 테이블 조인, Self JOIN, JOIN + 서브쿼리 조합, 그리고 헷갈리기 쉬운 USING vs ON 비교까지 한번에 정리해드립니다! 1️⃣ 다중 테이블 조인 (Multi-table JOIN)✅ 개념두 개 이상의 테이블을 JOIN해서 하나의 결과로 합치는 방식입니다. 실무에서는 거의 항상 사용됩니다. 📌 예제SELECT users.name,..
[SQL] #11 SQL DCL과 TCL 완전 정리, 권한 관리와 트랜잭션 제어 쉽게 이해하기
·
Database/SQL
안녕하세요 토스트데브입니다 😊SQL에는 데이터를 저장하고 구조를 정의하는 명령어 외에도, 접근 권한을 제어하고 데이터 처리의 신뢰성을 유지하는 명령어들이 존재합니다.오늘은 그중에서 DCL(Data Control Language)과 TCL(Transaction Control Language)에 대해 알아보겠습니다! 🛡️ DCL: 데이터 제어어 (Data Control Language)✅ DCL이란?DCL(Data Control Language)은 데이터베이스 사용자에게 권한을 부여하거나 회수하는 명령어입니다.👉 누가 어떤 데이터에 접근하고 조작할 수 있는지를 통제하는 기능이에요. 🔐 주요 DCL 명령어1️⃣ GRANT – 권한 부여GRANT SELECT, INSERT ON users TO 'gu..
[SQL] #10 SQL 데이터 정의어(DDL) 완전 정리, CREATE부터 DROP까지
·
Database/SQL
안녕하세요 토스트데브입니다 😊오늘은 SQL에서 테이블, 컬럼, 제약 조건 등을 만들고 수정할 때 사용하는 명령어, 바로 데이터 정의어(DDL)에 대해 알아보겠습니다!SQL을 처음 배우는 분들이라면 꼭 한 번 정리하고 넘어가야 할 중요한 개념이에요. 🏗️ 데이터 정의어 DDL이란?DDL(Data Definition Language)은 데이터베이스의 구조를 정의하거나 변경하는 SQL 명령어입니다.즉, 테이블을 만들고, 바꾸고, 삭제할 때 사용하는 명령어라고 보면 됩니다. 🧩 주요 DDL 명령어1️⃣ CREATE – 새 객체 생성CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50), email VARCHAR(100), created_at DAT..
[SQL] #09 뷰(View)와 인덱스(Index) 완벽 이해! 속도와 재 사용을 동시에 잡자!
·
Database/SQL
안녕하세요 토스트데브입니다 😊오늘은 SQL에서 자주 사용되지만 헷갈릴 수 있는 두 가지 개념, 뷰(View)와 인덱스(Index)에 대해 깔끔하게 정리해드릴게요! 👁️ SQL 뷰(View)란?✅ 뷰의 정의뷰(View)는 하나 이상의 테이블에서 미리 정의해둔 SELECT 쿼리의 결과를 저장한 가상의 테이블입니다.📌 실제 데이터를 저장하지 않고, 쿼리 결과만을 보여주는 읽기 전용 창이라고 생각하면 이해가 쉬워요. 📌 뷰의 사용 목적복잡한 쿼리를 간단하게 재사용민감한 데이터를 숨기고 보여주기데이터 접근을 논리적으로 분리보안성과 가독성 향상 🧪 뷰 생성 예제CREATE VIEW active_users ASSELECT id, name, emailFROM usersWHERE is_active = 1;➡️..
[SQL] #08 SQL 서브쿼리 완전 정리, 중첩 쿼리의 개념과 예제까지
·
Database/SQL
안녕하세요 토스트데브입니다. 오늘은 SQL 기초 중에서도 헷갈리기 쉬운 서브쿼리(Subquery)와 중첩 쿼리(Nested Query)에 대해 쉽고 명확하게 정리해드리겠습니다.데이터를 좀 더 유연하게 조회하고 싶다면 꼭 알아야 할 개념이에요! 🧐 서브쿼리란?서브쿼리(Subquery)는 SQL문 안에 또 다른 SELECT 문을 포함시킨 것입니다.말 그대로 “쿼리 안의 쿼리”, 즉 중첩 쿼리(Nested Query)라고도 불립니다. ✅ 서브쿼리 기본 구조SELECT 컬럼FROM 테이블WHERE 컬럼 = (SELECT ... FROM ... WHERE ...); 🔍 서브쿼리 사용 예제🎯 예제 1: 가장 높은 점수를 받은 학생 조회SELECT name, scoreFROM studentsWHERE scor..
[SQL] #07 SQL JOIN 완전 정복! INNER부터 LEFT, RIGHT까지 한눈에
·
Database/SQL
안녕하세요! 토스트데브입니다.오늘은 SQL에서 여러 테이블을 연결해 데이터를 조회하는 방법, 바로 JOIN에 대해 정리해보겠습니다. 🔗 SQL JOIN이란?SQL의 JOIN은 두 개 이상의 테이블을 연결해 관련 있는 데이터를 함께 조회할 수 있도록 해주는 기능입니다.실제 프로젝트에서는 데이터가 여러 테이블에 나뉘어 저장되기 때문에, JOIN은 실무에서 반드시 필요한 핵심 기능입니다. 📌 JOIN의 기본 구조SELECT A.컬럼, B.컬럼FROM 테이블A AJOIN 테이블B BON A.기준컬럼 = B.기준컬럼; 🧩 JOIN의 종류1️⃣ INNER JOIN – 공통된 값만 조회두 테이블에서 일치하는 데이터만 조회합니다.SELECT users.name, orders.productFROM users..
[SQL] #06 SQL 데이터 삽입(INSERT), 수정(UPDATE), 삭제(DELETE)
·
Database/SQL
안녕하세요 토스트데브입니다.오늘은 SQL 데이터를 다루는 3대 명령어인 삽입(INSERT), 수정(UPDATE), 삭제(DELETE)에 대해 알아봅니다.데이터를 다루는 기본 3대 명령어 완벽 정리 ✅ 1. 데이터 삽입: INSERT INTOINSERT 문은 테이블에 새로운 데이터를 추가할 때 사용합니다.📌 기본 문법INSERT INTO 테이블명 (컬럼1, 컬럼2, ...)VALUES (값1, 값2, ...); 📌 예제INSERT INTO users (name, age, email)VALUES ('홍길동', 25, 'hong@example.com');➡️ users 테이블에 새 사용자 정보 추가💡 팁컬럼 순서와 값 순서가 반드시 일치해야 합니다.일부 컬럼만 입력할 수도 있으며, 나머지는 기본값 또는..
[SQL] #05 SQL 집계 함수(count, sum, avg, max, min)와 Group by
·
Database/SQL
안녕하세요 토스트데브입니다.이번 글에서는 SQL의 집계함수와 Group by에 대해 알아보도록 할게요!데이터를 요약하고 그룹별로 분석하는 방법 ✅ 집계 함수란?집계 함수(Aggregate Functions)는 여러 행의 데이터를 모아서 하나의 결과값으로 요약해주는 SQL 함수입니다.예: “회원 수가 몇 명이지?”, “총 판매 금액은 얼마야?” 📌 주요 집계 함수 목록함수설명예시COUNT()행의 개수 세기COUNT(*) → 총 행 수SUM()합계 구하기SUM(price)AVG()평균 구하기AVG(score)MAX()최대값 구하기MAX(salary)MIN()최소값 구하기MIN(age) 📌 예시SELECT COUNT(*) FROM users;SELECT AVG(score) FROM exams;SELEC..
[SQL] #04 SQL 조건문 완벽정리! WHERE, AND, OR, NOT 쉽게 배우기!
·
Database/SQL
안녕하세요 토스트 데브입니다. 이번 글에서는 SQL의 SELECT 문에 이어 조건문에 대해 자세히 알아보겠습니다.📘 SQL 데이터 필터링과 조합WHERE, AND, OR, NOT로 조건을 자유롭게 만들자!✅ 데이터 필터링이란?SQL에서 데이터 필터링은 WHERE 절을 이용해 원하는 조건에 맞는 데이터만 골라서 조회하는 것입니다.즉, "필요한 데이터만 뽑자!"는 것이죠.SELECT * FROM users WHERE age > 20;➡️ 나이가 20세 초과인 사용자만 가져옵니다.📌 비교 연산자연산자설명예시=같다WHERE age = 25!= 또는 같지 않다WHERE age != 30> / 초과 / 미만WHERE age > 18>= / 이상 / 이하WHERE age >= 20BETWEEN A AND BA 이..
[SQL] #02 SQL이란? 데이터베이스와 대화하는 언어!
·
Database/SQL
안녕하세요 토스트 데브입니다. SQL에 대해 알아보면서 이번 글에서는 SQL이 무엇인지에 대해 완벽하게 정리하며 짚고 넘어가보겠습니다. 📌 SQL이란?SQL(Structured Query Language)은 관계형 데이터베이스에서 데이터를 조회, 조작, 정의, 제어하는 데 사용되는 표준 언어입니다. 간단히 말해, 데이터베이스와 소통하는 언어라고 할 수 있습니다.📌 SQL의 주요 기능SQL은 다음과 같은 네 가지 주요 기능을 제공합니다.데이터 조회(SELECT)데이터를 검색하거나 확인할 때 사용합니다.예: SELECT * FROM users;데이터 조작(INSERT, UPDATE, DELETE)데이터를 삽입, 수정, 삭제할 때 사용합니다.예: INSERT INTO users (name, age) VAL..
[SQL] #01 데이터 베이스란?
·
Database/SQL
안녕하세요 토스트데브입니다.오늘부터 SQL에 대해 알아볼 탠데요! 가장 먼저 데이터베이스란 무엇인지에 대해 알아보겠습니다.💾 데이터베이스란 무엇인가?데이터를 저장하고, 꺼내 쓰고, 관리하는 똑똑한 창고✅ 데이터베이스 정의데이터베이스(Database)는✔️ 데이터를 구조적으로 저장하고✔️ 필요할 때 쉽게 검색하고 수정할 수 있도록 만든 정보 저장 시스템입니다.쉽게 말해, 정리 잘 된 디지털 파일 캐비닛 같은 거예요.🧠 왜 데이터베이스가 필요할까?수천 개의 상품 정보?수백만 명의 고객 데이터?👉 엑셀 파일로는 한계가 있어요.📌 이럴 때 데이터베이스가 빛을 발합니다!🔍 데이터베이스의 주요 특징항목설명📂 구조화일정한 규칙에 따라 정리된 데이터⚡ 효율성빠르게 검색·수정·삭제 가능🛡️ 무결성데이터의 정..