1、儘量不要寫太過複雜的SQL查詢,不要想著非要一次性將結果全部以前端要求的形式返回出來,可以多次分開查詢,這樣邏輯清晰,問題解決速度快,方便維護,並且SQL的效率也高。 2、在使用聯表查詢的時候,關聯表的表長一定不能過長,不然十分影響查詢效率。工作中的實際情況是,當關聯表表長接近1000時,速度就 ...
1、儘量不要寫太過複雜的SQL查詢,不要想著非要一次性將結果全部以前端要求的形式返回出來,可以多次分開查詢,這樣邏輯清晰,問題解決速度快,方便維護,並且SQL的效率也高。
2、在使用聯表查詢的時候,關聯表的表長一定不能過長,不然十分影響查詢效率。工作中的實際情況是,當關聯表表長接近1000時,速度就有明顯下降。
3、有關GROUP BY:
- GROUP BY分組後,結果是匯聚成“組”的形式,多用於去重或者返回不同組內的統計數據,如最大值什麼的,即只返回同一組數據中的一個值,可以和group_contact連用,以將同一個欄位的多個數據連接起來作為一個欄位返回。若需要返回不同組下的所有數據,不能用group by(當初會犯這個錯誤也是group by沒學好...)
- GROUP BY X意思是將所有具有相同X欄位值的記錄放到一個分組裡。
- GROUP BY X, Y意思是將所有具有相同X欄位值和Y欄位值的記錄放到一個分組裡。