【问题标题】:Difference between select() and get() in laravel eloquentlaravel eloquent 中 select() 和 get() 的区别
【发布时间】:2015-02-22 10:43:57
【问题描述】:

在使用 laravel eloquent 模型时,get() 和 select() 方法有什么区别。哪种方法更快?

【问题讨论】:

    标签: laravel laravel-4


    【解决方案1】:

    是的,有区别。 select() 仅用于定义您想要的列。 get() 用于实际获取结果(> 执行查询),它还允许您指定列。

    DB::table('foo')->select(array('bar'));
    

    不会不执行任何事情。你仍然需要get()

    DB::table('foo')->select(array('bar'))->get();
    

    现在您会收到仅包含 bar 列的结果。
    也可以这样做:

    DB::table('foo')->get(array('bar'));
    

    所以语法方面单独get() 更快(意味着更短),而在性能方面你不会注意到任何差异。

    另一个小区别select() 可以使用列表语法

    select('foo', 'bar', 'etc', 'whatever')
    

    对于get(),您必须使用数组

    get(array('foo', 'bar', 'etc', 'whatever'))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-07
      • 2015-05-28
      • 2014-12-07
      • 1970-01-01
      • 2015-12-03
      • 2017-03-31
      相关资源
      最近更新 更多