연결 조건을 사용하여 여러 테이블을 연결하는 것이 테이블 연결(JOIN)입니다. 테이블 연결을 통해 여러 테이블 간의 데이터를 얻을 수 있습니다.
테이블 연결 구문:
SELECT 테이블 이름 1. 열 이름 , 테이블 이름 2. 열 이름 FROM Table 1, Table 2 WHERE 조건
테이블을 조인하는 여러 가지 방법:
내부 조인: 조인 또는 내부 조인
자체 조인: 동일한 테이블 내에서 조인
외부 조인:
왼쪽 외부 조인, 왼쪽 조인
오른쪽 외부 조인, 오른쪽 조인
전체 외부 조인, 전체 조인
data (table1):
data( table2):
Inner Join은 조인된 다른 테이블과 일치하지 않는 모든 행을 결과 테이블에서 삭제하는 것입니다. (Intersection)
Format:
SELECT A.c1, B.c2 FROM A JOIN B ON A .c3 = B.c3
예:
<?php $conn = mysqli_connect("localhost", "root","admin","study"); if ($conn) { echo "数据库链接成功\n"; } else { echo mysqli_connect_error(); } # SQL语句 $SQL = "SELECT table1.name, table1.age, table2.class FROM table1 JOIN table2 ON table1.name = table2.name"; # 执行 $result = mysqli_query($conn, $SQL); # 查看是否执行成功 if ($result) { echo "SQL 语句执行成功!\n"; }else { echo mysqli_error($conn); } # 调试输出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 关闭连接 mysqli_close($conn); ?>
출력 결과:
데이터베이스 링크 성공
SQL 문이 성공적으로 실행되었습니다!
Array
(
[name] => Yang Fugui
[ age] => 18
[class] => 수학 수업
)
Array
(
[name] => Yang Meili
[age] => 19
[class] => 중국어 수업
)
Array
(
[name ] => Yang Jianguo
[age] => 20
[class] => 영어 수업
)
테이블의 모든 행을 포함합니다(올바른 테이블이 있는지 여부와 일치하는 행에 관계 없음). ) 및 오른쪽 테이블의 일치하는 모든 행
SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3예:
<?php $conn = mysqli_connect("localhost", "root","admin","study"); if ($conn) { echo "数据库链接成功\n"; } else { echo mysqli_connect_error(); } # SQL语句 $SQL = "SELECT table1.name, table1.age, table2.class FROM table1 LEFT JOIN table2 ON table1.name = table2.name"; # 执行 $result = mysqli_query($conn, $SQL); # 查看是否执行成功 if ($result) { echo "SQL 语句执行成功!\n"; }else { echo mysqli_error($conn); } # 调试输出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 关闭连接 mysqli_close($conn); ?>
출력 결과:
데이터베이스 링크 성공SQL 문이 성공적으로 실행되었습니다!Array
right Join
(
[name] => Yang Fugui
[age] => 18
[class] => 수학 수업
)
Array
(
[ 이름] => 양메이리
[나이] => 19
[클래스] => 중국어 수업
)
Array
(
[이름] => 양젠궈
[나이] => 20
[클래스 ] => 영어 수업
)
Array
(
[name] => Yang Tiezhu
[age] => 21
[class] =>
)
형식:
SELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B .c3예:
<?php $conn = mysqli_connect("localhost", "root","admin","study"); if ($conn) { echo "数据库链接成功\n"; } else { echo mysqli_connect_error(); } # SQL语句 $SQL = "SELECT table1.name, table1.age, table2.class FROM table1 RIGHT JOIN table2 ON table1.name = table2.name"; # 执行 $result = mysqli_query($conn, $SQL); # 查看是否执行成功 if ($result) { echo "SQL 语句执行成功!\n"; }else { echo mysqli_error($conn); } # 调试输出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 关闭连接 mysqli_close($conn); ?>
출력 결과:
데이터베이스 링크 성공SQL 문이 성공적으로 실행되었습니다!Array
완전 조인
(
[name] => Yang Fugui
[age] => 18
[class ] => 수학 수업
)
Array
(
[이름] => 양메이리
[나이] => 19
[수업] => 중국어 수업
)
Array
(
[이름] => ; 양젠궈
[나이] => 20
[클래스] => 영어 수업
)
Array
(
[이름] =>
[나이] =>
[클래스] => 역사 수업
)
형식:
SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3UNIONSELECT A.c1, B.c2 FROM A RIGHT JOIN B ON A.c3 = B.c3
예:
<?php $conn = mysqli_connect("localhost", "root","admin","study"); if ($conn) { echo "数据库链接成功\n"; } else { echo mysqli_connect_error(); } # SQL语句 $SQL = "SELECT table1.name, table1.age, table2.class FROM table1 LEFT JOIN table2 ON table1.name = table2.name UNION SELECT table1.name, table1.age, table2.class FROM table1 RIGHT JOIN table2 ON table1.name = table2.name"; # 执行 $result = mysqli_query($conn, $SQL); # 查看是否执行成功 if ($result) { echo "SQL 语句执行成功!\n"; }else { echo mysqli_error($conn); } # 调试输出 while ($line = mysqli_fetch_assoc($result)) { print_r($line); } # 关闭连接 mysqli_close($conn); ?>
출력 결과:
데이터베이스 링크 성공SQL 문이 성공적으로 실행되었습니다!Array
(
[name] => Yang Fugui
[age] => 18
[class] => 수학 수업
)
Array
(
[name] => Yang Beautiful
[나이] => 19
[클래스] => 중국어 수업
)
Array
(
[이름] => Yang Jianguo
[나이] => 20
[클래스] => 영어 수업
)
Array
(
[이름] => Yang Tiezhu
[나이] => 21
[클래스] =>
)
Array
(
[이름] =>
[나이] =>
[수업] => 역사수업
)
위 내용은 MySQL 및 PHP에서 테이블 연결을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!