文章詳情頁(yè)
mysql兩種多表查詢的區(qū)別?
瀏覽:100日期:2022-06-13 13:01:22
問題描述
SQL 1:
SELECT a.*, b.nameFROM t_coach aLEFT JOIN t_school b on a.school_id=b.id
SQL 2:
SELECT a.*, (select b.name FROM t_school b WHERE b.id= a.school_id) AS name FROM t_coach a
SQL1和SQL2得到結(jié)果是一樣的。
在實(shí)際開發(fā)中第二種SQL 可以這樣寫嗎? 相對(duì)于SQL1 ,SQL2的效率是不是低?
問題解答
回答1:SQL1,B表只掃描一遍SQL2,A表有多少條記錄,B表就被掃描多少遍當(dāng)你數(shù)據(jù)庫(kù)的數(shù)據(jù)量足夠到,SQL2直接出不來(lái)結(jié)果,會(huì)把數(shù)據(jù)庫(kù)搞死
相關(guān)文章:
1. [python2]local variable referenced before assignment問題2. 求救一下,用新版的phpstudy,數(shù)據(jù)庫(kù)過段時(shí)間會(huì)消失是什么情況?3. mysql - 如何在有自增id的情況下,讓其他某些字段能不重復(fù)插入4. python小白,關(guān)于函數(shù)問題5. django - Python error: [Errno 99] Cannot assign requested address6. Python2中code.co_kwonlyargcount的等效寫法7. java - 線上應(yīng)用,如果數(shù)據(jù)庫(kù)操作失敗的話應(yīng)該如何處理?8. node.js - win 下 npm install 遇到了如下錯(cuò)誤 會(huì)導(dǎo)致 無(wú)法 run dev么?9. python小白 關(guān)于類里面的方法獲取變量失敗的問題10. angular.js - 百度支持_escaped_fragment_嗎?
排行榜

熱門標(biāo)簽