【问题标题】:Appropriate use of count_all_results()?适当使用count_all_results()?
【发布时间】:2015-06-17 11:27:02
【问题描述】:

假设我有一个名为 users 的数据库,每个用户都有一个 ID、OS_type 和 LastName 字段。我想查看数据库并计算具有特定 OS_type 的用户数量(以 iOS 为例)。

count_all_results() 是在这种情况下使用的正确函数,还是数据库库中有更合适的函数?

$read_db = $this->load->database('read', TRUE);
$read_db->where(array('iOS' => $OS_type));
$read_db->from('users');
$count = $read_db->count_all_results();

这是对函数的正确使用吗?

【问题讨论】:

  • 如果您不想将任何信息用于该特定请求,那么可以。但是,如果您还需要使用数据,请使用 num_rows() stackoverflow.com/questions/7036950/…
  • 如果您只需要计数,这是最好的方法,而不是使用 num_rows()

标签: php codeigniter


【解决方案1】:

最好使用num_rows() 来计算行数

$read_db->num_rows();

$count = count($read_db->all);

您还可以使用写入方式来计算特定 Active Record 查询中的行数,方法是使用 count_all_results()

【讨论】:

  • 这是您的提议吗? $read_db = $this->load->database('read', TRUE); $read_db->where(array('iOS' => $OS_type)); $read_db->from('users'); $count = count($read_db->all);
  • all 方法为您提供查询结果中的行数
  • 还有你要数什么,遇到什么问题
  • 对不起,我不明白你的 cmets 指的是什么。
  • 最好使用num_rows() 来获取查询中的行数
【解决方案2】:

你可以这样使用 $read_db->num_rows();很有用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-21
    • 1970-01-01
    • 1970-01-01
    • 2011-08-06
    • 1970-01-01
    • 1970-01-01
    • 2011-11-25
    • 1970-01-01
    相关资源
    最近更新 更多