Codeigniter 中按类别和年份排序

Sequence by category and year in Codeigniter

提问人:Bireon 提问时间:8/31/2018 最后编辑:curiosityBireon 更新时间:8/31/2018 访问量:178

问:

我有一个结构表,如下所示:

dbstructure

我的预期结果是,当用户添加新数据时(如果 kode 的新值将从 1 开始序列,如果 kode 值已经存在,则序列将继续。

expected

我的查询本身已经可以根据年度记录重置序列,但我还想尝试如果数据在 kode 字段中有新值,序列将启动。 这是我到目前为止的查询:

$q_nomer_terakhir = $this->db->query("SELECT (MAX(no_agenda)) AS last FROM t_surat_keluar WHERE YEAR(tgl_catat) = '".$this->session->userdata('admin_ta')."'")->row_array();
$last   = str_pad(intval($q_nomer_terakhir['last']+1), 2, '0', STR_PAD_LEFT);

如何根据我的需要创建第二个查询以重置序列?

谢谢

PHP codeigniter 序列

评论

1赞 Vishnu Bhadoriya 8/31/2018
在第一个查询的 where 条件中也添加 Kode 值
0赞 Bireon 8/31/2018
@VishnuBhadoriya 感谢您的建议,我添加了 kode 值,但结果不是序列(始终为 1)。查询:$q_nomer_terakhir = $this->db->query("SELECT (MAX(no_agenda)) AS last FROM t_surat_keluar WHERE kode AND YEAR(tgl_catat) = '".$this->session->userdata('admin_ta')."'")->row_array(); $last = str_pad(intval($q_nomer_terakhir['last']+1), 2, '0', STR_PAD_LEFT);
0赞 Vishnu Bhadoriya 8/31/2018
在查询中添加 ORDER BY ID DESC 将获取最后一条记录,无需检查 MAX(no_agenda) 然后
0赞 Bireon 9/3/2018
嗨@VishnuBhadoriya我不明白,我试图下订单并删除 MAX 语句。但什么也没发生。如果你不介意,你能分享一下完整的例子吗?谢谢

答: 暂无答案