Yii2.0 limit(1)與one()


ActiveRecord中的limit(1)與one()的區別

 1 (new \yii\db\Query())->from('user')->limit(1)->one()
 2 
 3 public function one($db = null)
 4 {
 5     $row = parent::one($db);
 6     if ($row !== false) {
 7         $models = $this->populate([$row]);
 8         return reset($models) ?: null;
 9     }
10 
11     return null;
12 }

 

one()本質是從取出的結果集中取出第一條,即結果集可能很大,取第一條。條件語句中不會加上limit 1條件。
如果你清楚的知道查詢將會只返回1行或幾行數據(例如:通過某些主鍵來查詢),這很好也提倡這樣做。
但是,如果查詢結果有可能返回大量的數據時,那么你應該顯示調用limit(1)方法,以改善性能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM