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