2

我想写这个sql 查询

SELECT count(*) FROM menu WHERE CHAR_LENGTH(CONTENT) > 20;

进入Codeigniter查询,怎么写?请帮忙。

我正在尝试使用以下查询编写上述 sql 查询。

  public function record_count() { 
     $this->load->database(); 
     $this->db->where('parent_id >','0');
    // $this->db->where('content>','20');   //if the field "content" is greater then 20 characters
     $this->db->from('menu');  
    return $this->db->count_all_results();
}
4

1 回答 1

2

您可以在那里使用 MySQLLENGTH()功能:

$this->db->where('LENGTH(content)>','20');

codeigniter 可能有一个内部函数,当您使用符号><字符串列时会自动添加 LENGTH 但是我不能肯定,因为我不是 codeigniter 专家,我也怀疑它是否会这样做,所以我会告诉你坚持与上述。

请记住,如果您的内容以数字开头,那么 MySQL 也可能会匹配该数字,因此假设您的内容以数字开头,21那么它将是匹配的。

正如您在此示例中看到的,这不是 MySQL 本身的常见习惯

于 2013-07-14T12:23:14.090 回答