黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 實例解析MySQL多表聯查

實例解析MySQL多表聯查

更新時間:2021-02-11 09:00:00 來源:動力節點 瀏覽2341次

MySQL是目前最流行的關系型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關系數據庫管理系統) 應用軟件之一。MySQL的流行得益于MySQL的強大功能和系統,MySQL支持多表聯查,大大減少了查詢數據的時間。本文我們就來聊一聊MySQL多表聯查

1. 嵌套查詢:一個查詢的結果是另外sql查詢的條件

如:查詢stu表中年齡最大的是誰?

mysql> select * from stu where age=(select max(age) from stu);
mysql> select * from stu where age in(select max(age) from stu); --(子查詢結果是多條時使用in查詢)
+----+------+------+-----+----------+
| id | name | age | sex | classid |
+----+------+------+-----+----------+
| 14 | abc | 33 | w | python01 |
+----+------+------+-----+----------+
1 row in set (0.01 sec)

2. where關聯查詢

已知:員工personnel表和部門department表,其中員工表中的did字段為部門表id主鍵關聯。

查詢所有員工信息,并顯示所屬部門名稱

要求:顯示字段:員工id 部門 姓名

mysql> select * from stu where age=(select max(age) from stu);
mysql> select * from stu where age in(select max(age) from stu); --(子查詢結果是多條時使用in查詢)
+----+------+------+-----+----------+
| id | name | age | sex | classid |
+----+------+------+-----+----------+
| 14 | abc | 33 | w | python01 |
+----+------+------+-----+----------+
1 row in set (0.01 sec)

3. 連接join查詢

左聯:left join

右聯:right join

內聯:inner join

已知如下表所示,商品類別信息表(具有兩層類別關系,通過pid表示,0表示一級類別)

mysql> select * from type;
+----+-----------+------+
| id | name | pid |
+----+-----------+------+
| 1 | 服裝 | 0 |
| 2 | 數碼 | 0 |
| 3 | 男裝 | 1 |
| 4 | 手機 | 2 |
| 5 | 相機 | 2 |
| 6 | 電腦 | 2 |
| 7 | 女裝 | 1 |
| 8 | 童裝 | 1 |
| 9 | 食品 | 0 |
| 10 | 零食 | 9 |
| 11 | 特產 | 9 |
| 12 | 休閑裝 | 1 |
+----+-----------+------+
12 rows in set (0.00 sec)
mysql> desc type;
+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(16) | NO | | NULL | |
| pid | int(10) unsigned | YES | | NULL | |
+-------+------------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

-- 查詢二級類別信息,并關聯出他們的父類別名稱

mysql> select t1.id,t1.name,t2.name from type t1,type t2 where t1.pid!=0 and t1.pid=t2.id;
+----+-----------+--------+
| id | name | name |
+----+-----------+--------+
| 3 | 男裝 | 服裝 |
| 4 | 手機 | 數碼 |
| 5 | 相機 | 數碼 |
| 6 | 電腦 | 數碼 |
| 7 | 女裝 | 服裝 |
| 8 | 童裝 | 服裝 |
| 10 | 零食 | 食品 |
| 11 | 特產 | 食品 |
| 12 | 休閑裝 | 服裝 |
+----+-----------+--------+
9 rows in set (0.01 sec)

--統計每個一級類別下都有多少個子類別。

mysql> select t1.id,t1.name,count(t2.id) from type t1,type t2 where t1.pid=0 and t1.id=t2.pid group by t1.id;
+----+--------+--------------+
| id | name | count(t2.id) |
+----+--------+--------------+
| 1 | 服裝 | 4 |
| 2 | 數碼 | 3 |
| 9 | 食品 | 2 |
+----+--------+--------------+
3 rows in set (0.00 sec)

其實我們通過上面的實例很容易看出MySQL多表聯查是有一些限制的,但這絲毫不影響它對MySQL數據查詢的效率提升。在本站的MySQL教程中,還有更多的優秀的MySQL知識等你來學!

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 日本综合欧美一区二区三区 | 波多野结衣在线观看一区二区 | 亚洲成人xxx | 五月天伊人 | 久久精品视频3 | 在线中文字日产区乱码 | 特黄特黄一级高清免费大片 | 插吧插吧综合网 | 在线不卡福利 | 新97人人模人人爽人人喊 | 久久96国产精品 | 黄网站视频 | 日韩不卡中文字幕 | 黄色网址视频在线观看 | 深夜福利动态 | 成人在免费视频手机观看网站 | 成年人免费在线视频 | 在线观看国产一区二三区 | 国外成人在线视频网站 | 成人欧美一区二区三区在线 | 日韩毛片在线免费观看 | 日韩三及片 | 一级做a爱片在线播放 | 俄罗斯一级毛片免费播放 | 国产激情在线 | 国产欧美日韩另类va在线 | 午夜在线视频 | 国产干美女 | 日日操日日插 | www午夜免费漫画 | 日批视频在线看 | 国产高清一区二区三区视频 | 久久亚洲综合 | 十八禁毛片 | 日韩伦理视频在线观看 | 中文字幕欧美日韩久久 | 故意坐公交忘穿内裤被挺进小说 | 国产 日韩 一区 | 视频一区二区中文字幕 | 中文字幕精品1在线 | 18以下勿进色禁网站 |