Backend/JOIN심화
-
생활코딩( SQL join ) (5) - EXCLUSIVE JOINBackend/JOIN심화 2021. 6. 10. 19:37
1. DataSet 2. Exclusive Join 2-1) LEFT JOIN과 비교 LEFT JOIN, RIGHT IS NULL 과 동일한 결과 순수 A에 해당하는 것만 JOIN하게 됨 2-2) EXCLUSIVE JOIN LEFT JOIN + WHERE IS NULL : A, B 테이블 중 A에만 있는 데이터를 원할 때 RIGHT JOIN + WHERE IS NULL : A, B 테이블 중 B에만 있는 데이터를 원할 때 Syntax SELECT FROM LEFT JOIN ON [LEFT JOIN tbl_c .... and so on] 1) A-B 순서로 하고, INNER는 A/B 둘다 적용되므로, 순서는 상관없음 2) ON : Join을 할 index등의 condition을 넣어줌 3) Where에서는..
-
생활코딩( SQL join ) (4) - FULL OUTER JOINBackend/JOIN심화 2021. 6. 9. 20:28
1. DataSet 2. Full Outer Join 두 테이블의 데이터를 Join 하는 Column의 데이터 존재 여부에 상관 없이 돌려줌 합집합 처럼 동작 MySQL 에서는 FUll OUTER JOIN 구문이 없어서 다음을 활용 (SELECT * FROM \ LEFT JOIN ON ) \ UNION DISTINCT \ (SELECT * FROM \ RIGHT JOIN ON ); ※ 추가 syntax UNION : 합집합 처리 DISTINCT : 중복 data 없앰 > 보통 full outer join은 성능 문제로 인해 잘 사용하지 않음 2-1) Outer Join Syntax SELECT FROM FULL OUTER JOIN ON [WHERE ] [FULL OUTER JOIN tbl_c .... a..
-
생활코딩( SQL join ) (3) - INNER JOINBackend/JOIN심화 2021. 6. 9. 19:18
1. DataSet 2. Inner Join 2-1) Left, Right Join 결과와 비교 Left, Rigjt Join의 결과에는 data row에 NULL 값 있을 수도 있음 ※ INNER JOIN은 엄격하게 교집합을 결과로 return 받음 ex) Left join 결과 "Using 3 tables and a projection!" +-----+------------+------------------+-----------+---------+-----------+------------------+ | tid | title | description | author_id | name | job_title | description | +-----+------------+-----------------..
-
생활코딩( SQL join ) (2) - LEFT JOIN & RIGHT JOINBackend/JOIN심화 2021. 6. 6. 16:10
1. DataSet 2. LeftJoin 2-1) Right Join Right Join도 결과는 동일, 단지 오른쪽 table을 기준으로 하는 것이 다름 Syntax SELECT FROM LEFT JOIN ON [WHERE ] [LEFT JOIN tbl_c .... and so on] 1) A-B 순서로 하고, LEFT는 A를 기준으로 함 2) ON : Join을 할 index등의 condition을 넣어줌 3) Where에서는 전체 output이 만족해야하는 조건을 지정해줄 수 있음 4) Project으로 column 지정 가능 2-2) Input SQL use opentutorials; SELECT * FROM topic; SELECT * FROM author; SELECT * FROM profil..
-
생활코딩( SQL join ) (1) - JOINBackend/JOIN심화 2021. 6. 5. 23:38
1. JOIN이란? 1-1) 정의 관계형 데이터베이스에서 여러 테이블을 하나의 테이블처럼 취급하는 방법 관계형 데이터베이스가 곧 JOIN이라고도 할 만큼 매우 중요한 개념 class로 분리하는 것 처럼, table 분리시 관리 유지/보수가 용이하고, 하나의 조합으로 사용하기 위해 Join을 사용 1-2) 알아야 하는 것 1) Join 방식의 종류 2) Join이 동작하는 원리 2. 테이블 분리 2-1) 테이블 분리의 중요성 Join에서 각 테이블들이 조합으로 쓰이므로, table을 잘 분리하는 방법을 먼저 알고 있어야 함 ※ 실습 예제 https://github.com/didghwns0514/Learning-MySQL/blob/main/SQL_join/sql%20join%20%EC%97%B0%EC%8A%..