如何在CI活动记录中按最大日期选择

时间:2015-07-04 16:50:53

标签: php mysql codeigniter date activerecord

我的表结构如下所示

login_session_id, user_id, created_date, ci_cession_id, user_agent_string

created_date字段是mysql_date_time。

我想从此表中获取最新行(基于created_date字段)。如何使用CI Active记录?

3 个答案:

答案 0 :(得分:6)

试试这个:

$this->db->select('*');
$this->db->from('** YOUR TABLE HERE **');
$this->db->order_by('created_date', 'desc');
$this->db->limit(1);
$query = $this->db->get();

这应该可以通过选择表中的所有列(您需要指定),排序最近日期在顶部的所有行,然后将其限制在仅最顶行的那一行,这将是最近的条目

答案 1 :(得分:1)

使用order_by()

 $this->db->select('login_session_id, user_id, created_date, ci_cession_id, user_agent_string');
 $this->db->from("table_name");
 $this->db->order_by("created_date", "desc");
 $query = $this->db->get(); 
 return $query->result();

这将解决问题

  

有关更多内容,请参阅HERE

答案 2 :(得分:0)

最好的方法是

$this->db->select_max('date');
$query = $this->db->get('members');  // Produces: SELECT MAX(date) as date FROM members
return $query->result();

https://www.codeigniter.com/userguide3/database/query_builder.html