SQL | MySQL | 테이블 생성,수정,삭제 - CREATE TABLE, ALTER TABLE, DROP TABLE
·
SQL
MySQL에서는 다음과 같은 CREATE 문을 사용하여 데이터 베이스와 테이블을 만들 수 있다. ! ① CREATE DATABASE ② CREATE TABLE 참고로 DB 관리툴은 DBeaver를 사용할 것이다. https://dbeaver.io/ DBeaver Community | Free Universal Database ToolDBeaver Universal Database Tool Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreS..
SQL | MySQL | 기본키, 고유키, 외래키
·
SQL
1. 기본키 (Primary Key) ✅ Primary Key, 기본키란? : SQL 데이터베이스에서 특정 레코드를 유일하게 식별하기 위해 사용되는 필드 또는 필드의 집합. : Primary Key는 테이블에서 각 레코드를 식별하는 데 사용되며, 테이블의 각 레코드에는 Primary Key 값이 반드시 있어야 함. ✅ Primary Key 특징 👉 각 레코드에 대해 고유하다.(Unique) 👉 NULL 값이 허용 안됨(NOT NULL) 👉 레코드를 식별하는 데 사용 , 테이블당 하나의 기본키만 지정 가능 ✅ Primary Key 생성 방법 ✔️ 기본키 생성 방법1 CREATE TABLE users( id INT PRIMARY KEY, name VARCHAR(50), email VARCHAR(100), p..
SQL | MySQL | 서브쿼리 (Subquery)
·
SQL
00. 서브쿼리(Subquery)란? ✅ 서브쿼리란? 👉 서브쿼리(Subquery)란 다른 쿼리 내부에 포함되어 있는 SELECT 문을 의미 👉 서브쿼리를 포함하고 있는 쿼리를 외부쿼리(outer query)라고 함 👉 서브쿼리는 내부쿼리(inner query) 라고도 함 👉 서브쿼리는 반드시 괄호 안에 있어야 함 👉 복잡한 JOIN이나 UNION을 대체할 수 있음 👉 메인쿼리 안에서 SELECT, FROM, WHERE, HAVING, 또는 IN 절과 함께 사용 ✅ 서브쿼리의 예 SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2); ✅ 예제 테이블들 -- customers 테이블 생성 DROP TABLE customers; CREATE TABLE cus..
SQL | MySQL | 테이블 집합 연산 - UNION, UNION ALL 등
·
SQL
✅ 예제 테이블 생성 CREATE TABLE employees ( employee_id INT PRIMARY KEY, first_name VARCHAR(50), last_name VARCHAR(50), department_id INT ); CREATE TABLE departments ( department_id INT PRIMARY KEY, department_name VARCHAR(50) ); INSERT INTO employees (employee_id, first_name, last_name, department_id) VALUES (1, 'John', 'Doe', 1), (2, 'Jane', 'Smith', 2), (3, 'Bob', 'Johnson', 1), (4, 'Alice', 'Brown'..
SQL | MySQL | JOIN - inner, left, right
·
SQL
01. MySQL에서의 JOIN MySQL에서 JOIN은 두 개 이상의 테이블에서 데이터를 검색하는 데 사용됨. 두 개 이상의 테이블의 자료를 결합 ✅JOIN의 종류 ① (INNER) JOIN 👉 EQUI JOIN : 주어진 (열에 대한) 조인 조건을 만족하는 자료(행) - 양쪽 모두에 값이 있는 행(NOT NULL) 반환 - 만약 동일 조인 내에 있는 컬럼들이 동일한 이름을 가지고 있으면, USING 함수를 사용할 수 있음. 👉 CROSS JOIN - 두 개 이상의 테이블에서 모든 조합을 반환 - 왼쪽 테이블의 모든 행이 오른쪽 테이블의 모든 행과 결합 👉 NATURAL JOIN - EQUI JOIN의 한 유형으로 조인 구문이 조인된 테이블에서 동일한 컬럼명을 가진 2개의 테이블에서 모든 컬럼들을 비교..
SQL | MySQL | Window Functions (2) - 집계 함수
·
SQL
01. Window Functions - 윈도우 함수 MySQL 8.0부터 Window Functions이 도입됨 OVER( ) 절을 사용해 지정된 윈도우 프레임에서 연산을 수행하는 함수 OVER ( [PARTITION BY ] [ORDER BY [ASC|DESC], ... ] [] ) 은 윈도우 함수를 넣으면 됨. PARTITION BY은 GROUP BY와 같은 기능을 함 👉 대표적인 윈도우 함수들 ROW_NUMBER( ) : 각 행에 일련번호 부여 RANK( ) : 각 행의 순위를 할당(중복이 있을 경우 중복 값은 같은 순위 부여, 1,1,3등으로 넘어감) DENSE_RANK( ) : 각 행의 순위를 할당(중복가능, 1, 1, 2,3... 순차적으로 순위부여) SUM( ), AVG( ), MIN( )..