Explain SQLSELECT/UPDATE/INSERT/DELETE 등의 쿼리가 어떻게 수행되는지 내부를 보여주는 SQL 명령 MySQL이 해당 쿼리를 어떻게 실행할지 Execution Plan을 보여주므로 이를 바탕으로 느리게 동작하는 쿼리의 최적화가 가능해집니다! Explain SQL 사용 방식Explain 뒤에 분석하고 싶은 쿼리 문을 작성EXPLAININSERT INTO comment (id, content, parent_comment_id, user_id, article_id)VALUES (1, '오늘 저녁은 김치찌개', NULL, 9, 6); Index테이블에서 특정 찾기 작업을 빠르게 수행하기 위해서 MySQL이 별도로 만드는 데이터 구조 검색을 위해 자주 사용되는 컬럼이 있다면, 인덱..
Join에 관해 학습하던 도중,조인의 다양한 종류 중 Self Join을 마주하게 되었습니다👀같은 테이블끼리 조인한다는 점에서 어떤 상황에서 유용하게 사용되는지 찾아보았습니다. 부모 자식 관계가 존재하는 경우한 테이블 내에서 부모 자식과 같이, 상하 관계가 명시되어 있는 경우 Self Join이 유용하게 사용될 수 있습니다예를 들면, 게시글에 대한 "댓글과 대댓글"의 관계를 떠올릴 수 있습니다. 게시글에 대한 댓글 내용을 저장하는 테이블 commentCREATE TABLE comment ( id INT PRIMARY KEY, -- 댓글 고유 ID content VARCHAR(255), -- 댓글 내용 parent_comment_id INT, -- 부모 댓글이 있는 경우, 부모 댓글 I..
조인이란?sql 조인은 두 개 이상의 테이블들을 공통 필드를 가지고 통합하는 것으로 스타 스키마로 구성된 테이블들로 분산되어 있던 정보를 통합하는데 사용된다! join의 결과로 양쪽의 필드를 모두 가진 새로운 테이블이 만들어지게 되며,조인의 방식에 따라 어떤 레코드들이 선택되는지, 어떤 필드들이 채워지는지가 결정된다. JOIN 문법!SELECT A.*, B.*FROM raw_dat.table1 A___ JOIN raw_data.table2 B ON A.key1 = B.key1 and A.key2 = B.key2WHERE A.ts>='2019-01-01'; 그렇다면 JOIN시에 고려할 점은 없을까?1. 중복 레코드가 없고 Primary Key의 uniqueness가 보장됨을 체크해야한다.2. 조인하는 ..