使用mysqli擴(kuò)展技術(shù)完成多個(gè)數(shù)據(jù)表查詢
發(fā)表時(shí)間:2023-08-31 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]使用mysqli擴(kuò)展技術(shù)實(shí)現(xiàn)多個(gè)數(shù)據(jù)表查詢?cè)趯?shí)際的項(xiàng)目開發(fā)過程中,一個(gè)項(xiàng)目經(jīng)常需要多個(gè)數(shù)據(jù)表來存儲(chǔ)信息,并且這些表之間通過主鍵彼此相互聯(lián)系,那么本篇文章將介紹如何實(shí)現(xiàn)多個(gè)數(shù)據(jù)表之前的查詢。那么我們?cè)谥暗囊黄恼隆妒褂胢ysqli擴(kuò)展技術(shù)查看服務(wù)器連接錯(cuò)誤報(bào)告的方法》中,我們介紹了mysqli擴(kuò)展...
使用mysqli擴(kuò)展技術(shù)實(shí)現(xiàn)多個(gè)數(shù)據(jù)表查詢在實(shí)際的項(xiàng)目開發(fā)過程中,一個(gè)項(xiàng)目經(jīng)常需要多個(gè)數(shù)據(jù)表來存儲(chǔ)信息,并且這些表之間通過主鍵彼此相互聯(lián)系,那么本篇文章將介紹如何實(shí)現(xiàn)多個(gè)數(shù)據(jù)表之前的查詢。
那么我們?cè)谥暗囊黄恼隆?a target="_blank">使用mysqli擴(kuò)展技術(shù)查看服務(wù)器連接錯(cuò)誤報(bào)告的方法》中,我們介紹了mysqli擴(kuò)展技術(shù)來查看服務(wù)器連接錯(cuò)誤報(bào)告的方法,今天我們將給大家介紹使用mysqli擴(kuò)展技術(shù)實(shí)現(xiàn)多個(gè)表之間的查詢!
技術(shù)要點(diǎn)
利用mysqli技術(shù)實(shí)現(xiàn)多表查詢,關(guān)鍵是如何實(shí)現(xiàn)多表之間通過主鍵進(jìn)行連接。下面是本實(shí)例實(shí)現(xiàn)多表查詢的代碼:
$sql = "select * from student,score where student.id=score.id";
$result = mysqli_query($link, $sql);
實(shí)現(xiàn)多表之間的查詢應(yīng)在from關(guān)鍵字后列出所有的表名,并且表名之間用逗號(hào)進(jìn)行分割。同時(shí)應(yīng)在where關(guān)鍵字中指明多表之間的連接條件,例如本例中的student.id=score.id,表明學(xué)生表和成績(jī)表之間通過學(xué)生表的id字段和成績(jī)表的sid字段進(jìn)行連接。
實(shí)現(xiàn)過程
(1)建立php文件,實(shí)現(xiàn)與MySQL數(shù)據(jù)庫(kù)之間的連接。代碼如下:
$link = mysqli_connect("localhost", "root", "root");
$conn = mysqli_select_db($link, "php_cn");
$sql = "select * from student,score where student.id=score.id";
$result = mysqli_query($link, $sql);
$res = mysqli_fetch_array($result, MYSQLI_ASSOC);
(2)實(shí)現(xiàn)多表之間的查詢,如果學(xué)生表和成績(jī)表中有滿足條件的記錄,則顯示這些記錄,否則提示沒有相關(guān)信息。代碼如下:
<?php
header("Content-Type:text/html; charset=utf-8");
$link = mysqli_connect("localhost", "root", "root");
$conn = mysqli_select_db($link, "php_cn");
$sql = "select * from student,score where student.id=score.id";
$result = mysqli_query($link, $sql);
$res = mysqli_fetch_array($result, MYSQLI_ASSOC);
if(!$res) {
echo "沒有找到你要的信息";
}else{
?>
<table width="600" height="50" border="0" align="center" cellspacing="1" cellpadding="0">
<tr>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'>序列</p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'>名字</p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'>語文成績(jī)</p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'>數(shù)學(xué)成績(jī)</p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'>外語成績(jī)</p>
</td>
</tr>
<?php
do{
?>
<tr>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'><?php echo $res['student_id'];?></p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'><?php echo $res['name'];?></p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'><?php echo $res['chinese'];?></p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'><?php echo $res['mathematics'];?></p>
</td>
<td width="156" height="25" bgcolor="#A2D4F4">
<p align='center'><?php echo $res['english'];?></p>
</td>
</tr>
<?php
}while($res = mysqli_fetch_array($result, MYSQLI_ASSOC));
}
?>
</table>
最后輸出的得到的結(jié)果如下:
注意:
上面的結(jié)果圖中的“序列”和“名字”字段來自 student 數(shù)據(jù)表,而其他的字段來自 score 數(shù)據(jù)表。
關(guān)于mysqli擴(kuò)展技術(shù)實(shí)現(xiàn)多表查詢我們就介紹到這里了,小伙伴們可以再自己的本地試試,下一篇我們繼續(xù)講解mysqli擴(kuò)展技術(shù),具體請(qǐng)閱讀《通過mysqli擴(kuò)展技術(shù)實(shí)現(xiàn)內(nèi)存回收》!
【相關(guān)教程推薦】
1. 相關(guān)專題推薦:《php操作mysql數(shù)據(jù)庫(kù)》
2.【MYSQL在線免費(fèi)視頻教程】
3. 相關(guān)視頻課程推薦: 《初級(jí)MySQLi 擴(kuò)展庫(kù)視頻教程》
以上就是使用mysqli擴(kuò)展技術(shù)實(shí)現(xiàn)多個(gè)數(shù)據(jù)表查詢的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。