文章詳情頁
mysql兩種多表查詢的區別?
瀏覽:107日期: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得到結果是一樣的。
在實際開發中第二種SQL 可以這樣寫嗎? 相對于SQL1 ,SQL2的效率是不是低?
問題解答
回答1:SQL1,B表只掃描一遍SQL2,A表有多少條記錄,B表就被掃描多少遍當你數據庫的數據量足夠到,SQL2直接出不來結果,會把數據庫搞死
相關文章:
1. 怎么php怎么通過數組顯示sql查詢結果呢,查詢結果有多條,如圖。2. 求大神支招,php怎么操作在一個html文件的<head>標記內添加內容?3. php - 數據庫表如果是null怎么替換為其他字段的值4. mysql - 數據庫建字段,默認值空和empty string有什么區別 1105. 致命錯誤: Class ’appfacadeTest’ not found6. mysql - JAVA怎么實現一個DAO同時實現查詢兩個實體類的結果集7. javascript - mysql插入數據時怎樣避免與庫中的數據重復?8. mysql建表報錯,查手冊看不懂,求解?9. shell - Update query wrong in MySQL10. sql語句 - 如何在mysql中批量添加用戶?
排行榜
