我使用的是MySQL数据库,并希望在桌子上“工作”MySQL的触发器与增量部分
我的架构进行任何插入之前创建一个触发如下:
+-------------+ +--------------+
| jobs | | machines |
+-------------+ +--------------+
| job_id | ___| machine_id |
| job_machine |_| | machine_name |
| job_name | +--------------+
| job_start |
+-------------+
有外国键之间jobs.job_machine和machines.machine_id
job_start是一个日期时间,将用于填写job_name。但它会这样形成
select DATE_FORMAT(job_start, "%y%m%d") from jobs where NEW.job_id;
我希望job_name成为job_start + job_machine +增量的串联。我会解释。
例如,如果插入的工作是
+--------+-------------+-----------------------+----------+
| job_id | job_machine | job_start | job_name |
+--------+-------------+-----------------------+----------+
| 1 | 3 | '2015-09-18 14:20:00' | |
+--------+-------------+-----------------------+----------+
JOB_NAME将是:15091831
但如果类似的工作被创建在同一台机器在同一天将是15091832
我有
CREATE DEFINER = CURRENT_USER TRIGGER `myTable`.`jobs_BEFORE_INSERT` BEFORE INSERT ON `jobs` FOR EACH ROW
BEGIN
select concat((select DATE_FORMAT(job_start, "%y%m%d") from jobs where job_id=NEW.job_id) , (select job_machine from jobs where job_id = NEW.job_id));
END
但我不太确定增量部分。最好的方法是什么?