<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
從今天開始, 小白我將帶領大家一起來補充一下 資料庫的知識.
表連線 (JOIN) 是在多個表之間通過連線條件. 使表之間發生關聯, 進而能從多個表之間獲取資料.
表連線語法:
SELECT 表名1.列名, 表名2.列名 FROM 表1, 表2 WHERE 條件
表連線的幾種方式:
內連線: join 或者 inner join
自連線: 同一張表內的連線
外連線:
資料 (table1):
資料 (table2):
內連線是從結果表中刪除與其他被連線表中沒有匹配的所有行. (交集)
格式:
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] => 楊富貴
[age] => 18
[class] => 數學課
)
Array
(
[name] => 楊美麗
[age] => 19
[class] => 語文課
)
Array
(
[name] => 楊建國
[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
(
[name] => 楊富貴
[age] => 18
[class] => 數學課
)
Array
(
[name] => 楊美麗
[age] => 19
[class] => 語文課
)
Array
(
[name] => 楊建國
[age] => 20
[class] => 英語課
)
Array
(
[name] => 楊鐵柱
[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] => 楊富貴
[age] => 18
[class] => 數學課
)
Array
(
[name] => 楊美麗
[age] => 19
[class] => 語文課
)
Array
(
[name] => 楊建國
[age] => 20
[class] => 英語課
)
Array
(
[name] =>
[age] =>
[class] => 歷史課
)
包含左右兩個表的全部行 (不管在另一個表中是否存在與之匹配的行).
格式:
SELECT A.c1, B.c2 FROM A LEFT JOIN B ON A.c3 = B.c3
UNION
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 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] => 楊富貴
[age] => 18
[class] => 數學課
)
Array
(
[name] => 楊美麗
[age] => 19
[class] => 語文課
)
Array
(
[name] => 楊建國
[age] => 20
[class] => 英語課
)
Array
(
[name] => 楊鐵柱
[age] => 21
[class] =>
)
Array
(
[name] =>
[age] =>
[class] => 歷史課
)
到此這篇關於MySQL與PHP的基礎與應用專題之表連線的文章就介紹到這了,更多相關MySQL 表連線內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45