
์์ฒญ ๊ฐ์ : CH04_04. ์กฐ์ธ(inner join, outer join, self join) -1
์์ฒญ ๋ ์ง : 11/28/2021
์ค๋ ๊ฐ์์์ ํผ ๋ฌธ์ ๋ inner join, outer join, ๊ณผ self join์ ์ฌ์ฉํ์ฌ ํผ ๋ฌธ์ ๋ค์ด๋ค. ํ์ง๋ง ์ด์ ์ ์ ๋ฆฌํ๋ฉด์ ์ ์ธ join์ ์ด๋ฏธ ์ ๋ฆฌํ๊ธฐ ๋๋ฌธ์ ์ค๋์ Update join๊ณผ delete join์ ๋ํด์ ์ ๋ฆฌํ๋ ค๊ณ ํ๋ค.
Update Join
MYSQL์์๋ UPDATE ์ ์์ JOIN ์ ์ฌ์ฉํ ์ ์๋ค.
FOMRAT
UPDATE T1, T2,
[INNER JOIN | LEFT JOIN] T1 ON T1.C1 = T2. C1
SET T1.C2 = T2.C2,
T2.C3 = expr
WHERE condition
์์
CREATE DATABASE IF NOT EXISTS empdb;
USE empdb;
-- create tables
CREATE TABLE merits (
performance INT(11) NOT NULL,
percentage FLOAT NOT NULL,
PRIMARY KEY (performance)
);
CREATE TABLE employees (
emp_id INT(11) NOT NULL AUTO_INCREMENT,
emp_name VARCHAR(255) NOT NULL,
performance INT(11) DEFAULT NULL,
salary FLOAT DEFAULT NULL,
PRIMARY KEY (emp_id),
CONSTRAINT fk_performance FOREIGN KEY (performance)
REFERENCES merits (performance)
);
-- insert data for merits table
INSERT INTO merits(performance,percentage)
VALUES(1,0),
(2,0.01),
(3,0.03),
(4,0.05),
(5,0.08);
-- insert data for employees table
INSERT INTO employees(emp_name,performance,salary)
VALUES('Mary Doe', 1, 50000),
('Cindy Smith', 3, 65000),
('Sue Greenspan', 4, 75000),
('Grace Dell', 5, 125000),
('Nancy Johnson', 3, 85000),
('John Doe', 2, 45000),
('Lily Bush', 3, 55000);
UPDATE JOIN WITH INNER JOIN:
UPDATE employees
INNER JOIN
merits ON employees.performance = merits.performance
SET
salary = salary + salary * percentage;

UPDATE JOIN WITH LEFT JOIN:
INSERT INTO employees(emp_name,performance,salary)
VALUES('Jack William',NULL,43000),
('Ricky Bond',NULL,52000);

DELETE JOIN
MYSQL์์๋ INNER JOIN ์ด๋ LEFT JOIN์ DELETE์ ํจ๊ป ์ฌ์ฉํ์ฌ DELETE JOIN์ ์ํํ ์ ์๋ค.
FORMAT
DELETE T1, T2
FROM T1
INNER JOIN T2 ON T1.key = T2.key
WHERE condition;
์์
DROP TABLE IF EXISTS t1, t2;
CREATE TABLE t1 (
id INT PRIMARY KEY AUTO_INCREMENT
);
CREATE TABLE t2 (
id VARCHAR(20) PRIMARY KEY,
ref INT NOT NULL
);
INSERT INTO t1 VALUES (1),(2),(3);
INSERT INTO t2(id,ref) VALUES('A',1),('B',2),('C',3);

ํจ์คํธ์บ ํผ์ค ํ๊ธ ์ฑ๋ฆฐ์ง ๋ฐ๋ก๊ฐ๊ธฐ๐ https://bit.ly/3FVdhDa
์๊ฐ๋ฃ 100% ํ๊ธ ์ฑ๋ฆฐ์ง | ํจ์คํธ์บ ํผ์ค
๋ฑ 5์ผ๊ฐ ์งํ๋๋ ํ๊ธ์ฑ๋ฆฐ์ง๋ก ์๊ฐ๋ฃ 100% ํ๊ธ๋ฐ์ผ์ธ์! ๋ ๋ฆ๊ธฐ์ ์ ์๊ธฐ๊ณ๋ฐ ๋ง์ฐจ ํ์น!
fastcampus.co.kr
๋ณธ ํฌ์คํ ์ ํจ์คํธ์บ ํผ์ค ํ๊ธ ์ฑ๋ฆฐ์ง ์ฐธ์ฌ๋ฅผ ์ํด ์์ฑ๋์์ต๋๋ค
'๐ STUDY > FASTCAMPUS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ํจ์คํธ์บ ํผ์ค ์ฑ๋ฆฐ์ง 30์ผ์ฐจ (2) | 2021.11.30 |
|---|---|
| ํจ์คํธ์บ ํผ์ค ์ฑ๋ฆฐ์ง 29์ผ์ฐจ (1) | 2021.11.29 |
| ํจ์คํธ์บ ํผ์ค ์ฑ๋ฆฐ์ง 27์ผ์ฐจ (0) | 2021.11.27 |
| ํจ์คํธ์บ ํผ์ค ์ฑ๋ฆฐ์ง 26์ผ์ฐจ (2) | 2021.11.26 |
| ํจ์คํธ์บ ํผ์ค ์ฑ๋ฆฐ์ง 25์ผ์ฐจ (0) | 2021.11.25 |