使用mysqli擴展技術實現多個數據表查詢
在實際的項目開發過程中,一個項目經常需要多個數據表來存儲信息,并且這些表之間通過主鍵彼此相互聯系,那么本篇文章將介紹如何實現多個數據表之前的查詢。
那么我們在之前的一篇文章《使用mysqli擴展技術查看服務器連接錯誤報告的方法》中,我們介紹了mysqli擴展技術來查看服務器連接錯誤報告的方法,今天我們將給大家介紹使用mysqli擴展技術實現多個表之間的查詢!
技術要點
利用mysqli技術實現多表查詢,關鍵是如何實現多表之間通過主鍵進行連接。下面是本實例實現多表查詢的代碼:
$sql?=?"select?*?from?student,score??where?student.id=score.id"; $result?=?mysqli_query($link,?$sql);
實現多表之間的查詢應在from關鍵字后列出所有的表名,并且表名之間用逗號進行分割。同時應在where關鍵字中指明多表之間的連接條件,例如本例中的student.id=score.id,表明學生表和成績表之間通過學生表的id字段和成績表的sid字段進行連接。
實現過程
(1)建立php文件,實現與MySQL數據庫之間的連接。代碼如下:
$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)實現多表之間的查詢,如果學生表和成績表中有滿足條件的記錄,則顯示這些記錄,否則提示沒有相關信息。代碼如下:?
<?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{ ?> ?????
????????????????????????????????
序列 ???????????????????????????? |
????????????????????????????????
名字 ???????????????????????????? |
????????????????????????????????
語文成績 ???????????????????????????? |
????????????????????????????????
數學成績 ???????????????????????????? |
????????????????????????????????
外語成績 ???????????????????????????? |
????????
???? |
????????
???? |
????????
???? |
????????
???? |
????????
???? |
最后輸出的得到的結果如下:
注意:
上面的結果圖中的“序列”和“名字”字段來自 student 數據表,而其他的字段來自 score 數據表。
關于mysqli擴展技術實現多表查詢我們就介紹到這里了,小伙伴們可以再自己的本地試試,下一篇我們繼續講解mysqli擴展技術,具體請閱讀《使用mysqli擴展技術查看服務器連接錯誤報告的方法》!
【相關教程推薦】
1. 相關專題推薦:《使用mysqli擴展技術查看服務器連接錯誤報告的方法》
2.【使用mysqli擴展技術查看服務器連接錯誤報告的方法】
3. 相關視頻課程推薦: 《使用mysqli擴展技術查看服務器連接錯誤報告的方法》