본문 바로가기
IT/SQL 기초강좌 (PostgreSQL)

20강 SQL이 뭐지? PostgreSQL Cross Join

by DoitSQL 2022. 12. 19.
728x90

20강 SQL이 뭐지? PostgreSQL Cross Join   

PostgreSQL

SQL이 뭐지? 20강 시작합니다.

 

이번 강의에서는

 PostgreSQL Cross Join

에 대해서 알아보겠습니다.

 

결합된 테이블에서 행의 데카르트 곱을 생성하려면, PostgreSQL CROSS JOIN을 사용합니다.  

데카르트 곱


Introduction to the PostgreSQL CROSS JOIN clause   

CROSS JOIN 절을 사용하면 두 개 이상의 테이블에 있는 행의 데카르트 곱을 생성할 수 있습니다.

 

LIFT JOIN 또는 INNER JOIN과 같은 다른 조인 절과 달리 CROSS JOIN 절에는 조인 술어가 없습니다.

 

두 테이블 T1T2의 교차 조인을 수행해야 한다고 가정합니다.

 

T1n개의 행이 있고 T2m개의 행이 있는 경우 결과 집합에 nxm 행이 있습니다.

예를 들어, T1에는 1,000개의 행이 있고 T2에는 1,000개의 행이 있으며 결과 집합에는 1,000 x 1,000 = 1,000,000개의 행이 있습니다.

 

다음은 CROSS JOIN 구문을 보여줍니다.

SELECT select_list
FROM T1
CROSS JOIN T2;   

 

다음 문장은 위 문장과 같습니다.

SELECT select_list
FROM T1, T2;   

 

또한 항상 true로 평가되는 조건과 함께 INNER JOIN 절을 사용하여 CROSS JOIN을 사용할 수 있습니다.

SELECT *
FROM T1
INNER JOIN T2 ON true;   


PostgreSQL CROSS JOIN example   

CROSS JOIN을 실습하기 위한 테이블을 생성하고 샘플데이터를 삽입합니다.

 

DROP TABLE IF EXISTS T1;
CREATE TABLE T1 (label CHAR(1) PRIMARY KEY);

DROP TABLE IF EXISTS T2;
CREATE TABLE T2 (score INT PRIMARY KEY);

INSERT INTO T1 (label)
VALUES
 ('A'),
 ('B');

INSERT INTO T2 (score)
VALUES
 (1),
 (2),
 (3);
COMMIT;   

 

다음 문은 CROSS JOIN 연산자를 사용하여 테이블 T1을 테이블 T2와 결합합니다.

SELECT *
FROM T1
CROSS JOIN T2;   

 

 label | score
-------+-------
 A     |     1
 B     |     1
 A     |     2
 B     |     2
 A     |     3
 B     |     3
(6 rows)

 

다음 그림은 테이블 T1을 테이블 T2에 결합할 때의 CROSS JOIN 결과를 보여줍니다.


두 개 이상의 테이블에 있는 행의 데카르트 곱을 만드는 PostgreSQL CROSS JOIN 절을 배웠습니다.

 

감사합니다.


본 강의는 PostgreSQL Tutorial을 참조합니다. 

 

PostgreSQL Tutorial - Learn PostgreSQL from Scratch

Welcome to the PostgreSQLTutorial.com website! This PostgreSQL tutorial helps you understand PostgreSQL quickly. You’ll master PostgreSQL very fast through many practical examples and apply the knowledge in developing applications using PostgreSQL. If yo

www.postgresqltutorial.com

실습용 테이블에 대해서는 3강을 참조하세요.

 

3강 SQL이 뭐지? 도구들을 설치해보자. ( PostgreSQL, HeidiSQL )

지난 시간까지 SQL이 뭔지 대충 감을 잡는 시간을 가졌습니다. 이번 시간에는 본격적인 SQL을 공부하기 위해서 도구들을 설치해 보겠습니다. 1. PostgreSQL 설치 ( Windows10 64bit 기준) 2. He

 


Do it! SQL을 찾아 주셔서 감사합니다. 여러분의 댓글이 큰 힘이 됩니다.

 

728x90

댓글