国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL筆記之連接查詢?cè)斀?/h1>
2024-07-24 12:42:13
字體:
供稿:網(wǎng)友

連接查詢是將兩個(gè)或兩個(gè)以上的表按某個(gè)條件連接起來,從中選取需要的數(shù)據(jù)

當(dāng)不同的表中存在表示相同意義的字段時(shí),可以通過該字段來連接這幾張表

參考表:employee

參考表:department

可以看到,上面兩張表都有同一個(gè)字段d_id

當(dāng)兩張表含有相同意義的字段(可以不同名)時(shí)就可以進(jìn)行連接查詢

內(nèi)連接查詢
復(fù)制代碼 代碼如下:www.survivalescaperooms.com

mysql> SELECT num, name, employee.d_id, sex, d_name, function
-> FROM employee, department
-> WHERE employee.d_id=department.d_id;
+------+--------+------+------+-----------+--------------+
| num | name | d_id | sex | d_name | function |
+------+--------+------+------+-----------+--------------+
| 1 | 張三 | 1001 | 男 | 科技部 | 研發(fā)產(chǎn)品 |
| 2 | 李四 | 1001 | 女 | 科技部 | 研發(fā)產(chǎn)品 |
| 3 | 王五 | 1002 | 男 | 生產(chǎn)部 | 生產(chǎn)產(chǎn)品 |
+------+--------+------+------+-----------+--------------+
rows in set (0.00 sec)

內(nèi)連接查詢只會(huì)查詢完全匹配的結(jié)果,此處使用d_id字段進(jìn)行連接

下面的表中也同樣使用這一字段


外連接查詢

外查詢也需要通過指定字段來進(jìn)行連接,當(dāng)該字段取值相等時(shí),可以查詢出該記錄

而且,該字段取值不相等的記錄也可以查詢出來

外連接查詢包括左連接查詢和右連接查詢


左連接查詢

復(fù)制代碼 代碼如下:www.survivalescaperooms.com

mysql> SELECT num, name, employee.d_id, d_name, function
-> FROM employee LEFT JOIN department
-> ON employee.d_id=department.d_id;
+------+--------+------+-----------+--------------+
| num | name | d_id | d_name | function |
+------+--------+------+-----------+--------------+
| 1 | 張三 | 1001 | 科技部 | 研發(fā)產(chǎn)品 |
| 2 | 李四 | 1001 | 科技部 | 研發(fā)產(chǎn)品 |
| 3 | 王五 | 1002 | 生產(chǎn)部 | 生產(chǎn)產(chǎn)品 |
| 4 | Aric | 1004 | NULL | NULL |
+------+--------+------+-----------+--------------+
rows in set (0.00 sec)

此處不僅查詢出了兩表中d_id字段相匹配的信息

 

并且通過LEFT JOIN查詢出了employee表中所有指定字段的信息

由于Aric沒有對(duì)應(yīng)d_name和function信息,所以顯示null


右連接查詢

復(fù)制代碼 代碼如下:www.survivalescaperooms.com

mysql> SELECT num, name, employee.d_id, d_name, function
-> FROM employee RIGHT JOIN department
-> ON employee.d_id=department.d_id;
+------+--------+------+-----------+--------------+
| num | name | d_id | d_name | function |
+------+--------+------+-----------+--------------+
| 1 | 張三 | 1001 | 科技部 | 研發(fā)產(chǎn)品 |
| 2 | 李四 | 1001 | 科技部 | 研發(fā)產(chǎn)品 |
| 3 | 王五 | 1002 | 生產(chǎn)部 | 生產(chǎn)產(chǎn)品 |
| NULL | NULL | NULL | 銷售部 | 策劃銷售 |
+------+--------+------+-----------+--------------+
rows in set (0.00 sec)

與上面相反,這里查詢出了匹配的信息和department表中的所有指定字段的信息

 

但是由于employee表中部分字段沒有對(duì)應(yīng),因此最后一行記錄有顯示NULL


復(fù)合條件連接查詢

復(fù)制代碼 代碼如下:www.survivalescaperooms.com

mysql> SELECT num, name, employee.d_id, sex, age, address
-> FROM employee, department
-> WHERE employee.d_id=department.d_id
-> AND age>=25;
+------+--------+------+------+------+-------------+
| num | name | d_id | sex | age | address |
+------+--------+------+------+------+-------------+
| 1 | 張三 | 1001 | 男 | 26 | 3號(hào)樓5層 |
| 3 | 王五 | 1002 | 男 | 25 | 5號(hào)樓1層 |
+------+--------+------+------+------+-------------+
rows in set (0.00 sec)

復(fù)合條件連接查詢是在進(jìn)行連接查詢的時(shí)候加入限制條件,此處的age>=25便是

 

通常情況下,限制條件越多,查詢?cè)骄_,限制條件可用AND累加

此外,還可以用復(fù)合條件進(jìn)行ORDER BY 排序

tips:連接查詢中使用最多的是內(nèi)連接查詢,而外連接查詢使用頻率較低

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

主站蜘蛛池模板: 宁阳县| 东乡县| 梧州市| 浙江省| 泗阳县| 巴青县| 凤山市| 弋阳县| 锡林浩特市| 孙吴县| 鄱阳县| 蕉岭县| 塘沽区| 林口县| 永新县| 南溪县| 山阳县| 澄江县| 南投市| 吉安县| 凤翔县| 当阳市| 普格县| 正镶白旗| 合山市| 芜湖县| 成武县| 阜南县| 康马县| 桦南县| 阿鲁科尔沁旗| 邳州市| 冷水江市| 十堰市| 温泉县| 淮阳县| 巫溪县| 海口市| 乌兰浩特市| 东源县| 博兴县|