gpt4 book ai didi

php - 根据年、月和我的自定义编号在 mysql 中创建一个 ID 列

转载 作者:行者123 更新时间:2023-11-29 22:15:18 27 4
gpt4 key购买 nike

我只想在mysql中使用150700001150600001(yymm00001)格式的ID列,这也是一个主键。我已经尝试过下面的代码

 select ifnull(lpad(max(pid)+1,9, '0'), 
concat(concat(DATE_FORMAT(CURDATE(), '%y'),
DATE_FORMAT(CURDATE(), '%m')),lpad('1',5,'0'))) pid
from patient_admission;

我想要:

╔═══════════╗
║ 150600001 ║
║ 150600002 ║
║ 150600003 ║
║ 150700001 ║
║ 150600002 ║
╚═══════════╝

等等

但是下个月它不会返回。谢谢。

最佳答案

这是我的表结构:

1.  pid {char(9), Primary Key}
2. pname
3. age
4. gender
5. marital_status
6. profession
7. father_name
8. mother_name
9. present_addr
10. permanent_addr
11. phone
12. contact_person_name
13. contact_person_phone
14. contact_person_relation
15. contact_person_addr
16. consultant_doctor
17. onduty_doctor
18. admission_fee
19. admission_date
20. bed_allotment
21. status

您提到的上面的代码已经经过测试。

我在 CodeIgniter 上运行它:

模型部分:

public function get_patient_id(){
$sql = "select ifnull(lpad(max(pid)+1,9, '0'), concat(concat(DATE_FORMAT(CURDATE(), '%y'), DATE_FORMAT(CURDATE(), '%m')),lpad('1',5,'0'))) pid from patient_admission";

$qry = $this->db->query($sql);
$ra = $qry->result_array();
return $ra[0];
}

Controller 部分:

public function entry(){
$data['patient_id'] = $this->Patient_admission_model->get_patient_id();
$this->load->view( 'patient/admission/entry', $data );

}

关于php - 根据年、月和我的自定义编号在 mysql 中创建一个 ID 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31255023/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com