codeigniter - 在 codeigniter 的多行中仅选择一列。如何以及这是否更有效?

标签 codeigniter activerecord query-optimization

我在考虑效率,但我不确定以一种或另一种方式。

但我有一堆多列的行。我只需要某个其他键是某个值的所有行中的名称字段。我可以像这样得到所有这些行:

$this->db->where('res_id', $res_id);
$q = $this->db->get('products');
return $q->result();

然后我可以通过它返回的数组 foreach 并且只使用每个对象的名称方法,例如:
foreach($returned_value as $fun):
    echo $fun->name;
endforeach;

但我想知道,只从每一行中选择 name 属性会更有效吗,我觉得问它很愚蠢,因为我一直在使用事件记录,但我该怎么做。我意识到我可以使用 $this->db->query() 写出来函数,但是有没有办法使用主要的事件记录命令来指定它?谢谢。

最佳答案

    $this->db->select('name'); 
    $this->db->from('tblNAME');   
    $this->db->where('res_id', $res_id);
    return $this->db->get()->result();

我想它更快,更有效,因为你没有返回所有东西。

未经测试

这是我使用的经过测试的功能,您可能会找到很好的引用
function get($id = null) 
        {
            $this->db->select('id, Username, First_Name, Last_Name, Role, Email');
            $this->db->from('user');
            if (!is_null($id)) $this->db->where('id', $id);
            $this->db->order_by('id', 'desc');
            return $this->db->get()->result();
        }

关于codeigniter - 在 codeigniter 的多行中仅选择一列。如何以及这是否更有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11874194/

相关文章:

php - PHP 中的 Foreach 和数组

javascript - ajax读取/获取变量有时无法使用codeigniter获取确切的变量

php - 如何从 codeigniter 中的数据库表中获取特定值

php - Codeigniter - 如果选项不同,则添加具有相同 ID 的产品

ruby-on-rails - 具有混合大小写列名称的小写方法名称

database - 数据库查询优化器和并行性中的左深度连接树

ruby-on-rails - 在 Rails 3 中设置 session 超时

mysql - 协会不能双向发挥作用

mysql - 优化正则表达式查询

sql - 使用内联查询或连接从另一个表中获取数据?