亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

mysql顯示內連接和隱式內連接的區別,什么時候非要用到顯示內連接。

mysql顯示內連接和隱式內連接的區別,什么時候非要用到顯示內連接。

茅侃侃 2019-07-28 16:54:59
mysql顯示內連接和隱式內連接的區別,什么時候非要用到顯示內連接。
查看完整描述

4 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

顯式內連接就是使用inner join的辦法,寫起來復雜些
以windows版本mysql里自帶的sakila數據庫為例
顯式內連接語法 select 字段名 from 表1 join 表2 on 連接條件 [ join 表3 on 連接條件 ... ] [ where 查詢條件 ... ];
SELECT store.address_id,first_name,last_name FROM store INNER JOIN staff ON store.manager_staff_id=staff.staff_id;
結果:
address_id first_name last_name
1 Mike Hillyer
2 Jon Stephens
隱式內連接語法 select 字段名 from 表1,表2 [ ,表3... ] where 連接條件 [ and 查詢/連接條件 ... ];
SELECT store.address_id,first_name,last_name FROM store,staff WHERE store.manager_staff_id=staff.staff_id;
結果:
address_id first_name last_name
1 Mike Hillyer
2 Jon Stephens
相對而言,隱式連接好理解好書寫,語法簡單,擔心的點較少。但是顯式連接可以減少字段的掃描,有更快的執行速度。這種速度優勢在3張或更多表連接時比較明顯



查看完整回答
反對 回復 2019-07-28
?
慕沐林林

TA貢獻2016條經驗 獲得超9個贊

SELECT * FROM emp e INNER JOIN emp m ON e.mgr=m.empno INNER JOIN dept d ON e.deptno=d.deptno AND e.hiredate<m.hiredate
個人理解,當只是兩張表時,顯示和隱式都可以使用,而當需要多張表進行內鏈接時,就必須使用顯示內連接的格式了,如果使用隱式則會報錯。。。

查看完整回答
反對 回復 2019-07-28
?
月關寶盒

TA貢獻1772條經驗 獲得超5個贊

SELECT * FROM emp e INNER JOIN emp m ON e.mgr=m.empno INNER JOIN dept d ON e.deptno=d.deptno AND e.hiredate<m.hiredate
個人理解,當只是兩張表時,顯示和隱式都可以使用,而當需要多張表進行內鏈接時,就必須使用顯示內連接的格式了,如果使用隱式則會報錯。。。

查看完整回答
反對 回復 2019-07-28
?
莫回無

TA貢獻1865條經驗 獲得超7個贊

如果你的程序和mysql是在同意服務器上,那么你是使用localhost:3306和IP:3306沒有區別。
如果不在同一服務器上,那你只能使用IP:3306來連接mysql。連接速度會有少許慢,但是感覺不出來。除非你程序服務器在南極,mysql在北極

查看完整回答
反對 回復 2019-07-28
  • 4 回答
  • 0 關注
  • 3778 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號