Codeigniter 3同日期数据按降序排序问题求助
CodeIgniter 3 同日期数据排序问题解决方法
你遇到的问题是因为当前仅按日期字段降序排序,当多条数据日期相同时,数据库会按照默认规则(比如主键升序、插入顺序)返回数据,不会自动按你需要的Data字段倒序排列。
解决方法很简单,只需要在order_by中添加第二个排序条件,指定Data字段也按降序排列即可。CodeIgniter 3支持两种写法:
- 在同一个
order_by方法中传入多个排序规则,用逗号分隔:
public function getDatakartu($id) { $this->db->select('*'); $this->db->from('input_name'); $this->db->join('dbs_card', 'dbs_card.name_card = input_name.id_card'); $this->db->where('dbs_card.name_card ', $id); // 添加Data字段的降序排序,替换成你实际的字段名 $this->db->order_by('dbs_card.date desc, dbs_card.data desc'); $query = $this->db->get(); return $query; }
- 多次调用
order_by方法:
public function getDatakartu($id) { $this->db->select('*'); $this->db->from('input_name'); $this->db->join('dbs_card', 'dbs_card.name_card = input_name.id_card'); $this->db->where('dbs_card.name_card ', $id); $this->db->order_by('dbs_card.date', 'desc'); // 添加Data字段的降序排序,替换成你实际的字段名 $this->db->order_by('dbs_card.data', 'desc'); $query = $this->db->get(); return $query; }
注意:将代码中的dbs_card.data替换成你实际存储目标数据的字段名(比如你提到的Data字段的真实名称),这样同日期的数据就会按该字段从5到1倒序排列了。
内容的提问来源于stack exchange,提问作者Ardi Ansori
相关产品推荐
相关产品推荐

