첫 번째 쿼리는 6 번째 열만 반환하고 두 번째는 12 번째를 반환합니다. 모든 쿼리는 두 번째 쿼리와 일치해야합니다.
DROP TABLE IF EXISTS A,B;
CREATE TABLE A (C1 INT, C2 INT, C3 INT);
CREATE TABLE B (C1 INT, C2 INT, C3 INT);
INSERT INTO A VALUES (1,1,1),(1,2,4);
INSERT INTO B VALUES (1,1,1),(1,2,3);
SELECT * FROM
A
JOIN B ON A.C1 = B.C1 AND A.C2 = B.C2 AND A.C3 = B.C3;
SELECT *
FROM A
JOIN B B1 ON A.C1 = B1.C1
JOIN B B2 ON A.C2 = B2.C2
JOIN B B3 ON A.C3 = B3.C3;
SELECT * FROM
-> A
-> JOIN B ON A.C1 = B.C1 AND A.C2 = B.C2 AND A.C3 = B.C3;
+------+------+------+------+------+------+
| C1 | C2 | C3 | C1 | C2 | C3 |
+------+------+------+------+------+------+
| 1 | 1 | 1 | 1 | 1 | 1 |
+------+------+------+------+------+------+
1 row in set (0.00 sec)
MariaDB [sandbox]>
MariaDB [sandbox]> SELECT *
-> FROM A
-> JOIN B B1 ON A.C1 = B1.C1
-> JOIN B B2 ON A.C2 = B2.C2
-> JOIN B B3 ON A.C3 = B3.C3;
+------+------+------+------+------+------+------+------+------+------+------+------+
| C1 | C2 | C3 | C1 | C2 | C3 | C1 | C2 | C3 | C1 | C2 | C3 |
+------+------+------+------+------+------+------+------+------+------+------+------+
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| 1 | 1 | 1 | 1 | 2 | 3 | 1 | 1 | 1 | 1 | 1 | 1 |
+------+------+------+------+------+------+------+------+------+------+------+------+
2 rows in set (0.00 sec)
SQL에서 정의 조인을 읽는 것으로 시작하십시오. 예를 통해 작업하십시오. 코드를 부분별로 실행하십시오. 예 : sqlfiddle.com. 이것은 "자체 조인"입니다. 그것에 대해 읽어보십시오. – philipxy
차이점은 쿼리를 관리하기 어렵게 만듭니다. 조인이 많으면 쿼리 실행 시간이 길어집니다. 당신은 질의의 실행 시간을 테스트 할 수 있으며 그 차이를 얻을 수 있습니다. –
@NewazSharif : 기능면에서 실제 차이가 있습니다. –