我的表结构如下所示
login_session_id, user_id, created_date, ci_cession_id, user_agent_string
created_date字段是mysql_date_time。
我想从此表中获取最新行(基于created_date
字段)。如何使用CI Active记录?
答案 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