文章詳情頁
mysql兩種多表查詢的區(qū)別?
瀏覽:161日期: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得到結果是一樣的。
在實際開發(fā)中第二種SQL 可以這樣寫嗎? 相對于SQL1 ,SQL2的效率是不是低?
問題解答
回答1:SQL1,B表只掃描一遍SQL2,A表有多少條記錄,B表就被掃描多少遍當你數(shù)據(jù)庫的數(shù)據(jù)量足夠到,SQL2直接出不來結果,會把數(shù)據(jù)庫搞死
相關文章:
1. javascript - react如何獲取offsetX?2. python - sqlalchemy更新數(shù)據(jù)報錯3. html5 - 前端面試碰到了一個緩存數(shù)據(jù)的問題,來論壇上請教一下4. MySQL中無法修改字段名的疑問5. macos - 無法source activate python276. PHPExcel表格導入數(shù)據(jù)庫怎么導入7. css - 移動端 盒子內加overflow-y:scroll后 字體會變大8. 運行python程序時出現(xiàn)“應用程序發(fā)生異常”的內存錯誤?9. html - 網頁的a標簽到底要不要寫上域名?10. 我在導入模板資源時遇到無法顯示的問題,請老師解答下
排行榜

熱門標簽
網公網安備