MySQL存储过程,用于选择,检查日期和插入

Mic*_*ini 1 php mysql stored-procedures

我试图在MySQL中创建一个存储过程.我从未使用过一个,所以我甚至不知道是否可以做我需要的东西.

我有两张桌子:

  1. 第一个包含已完成的作业(id_operator,date,payment_days,payment_status ..)
  2. 第二个包含发送给运算符的通知(id,text,id_operator ..)

我需要在payment_status字段中选择第一个表中有0的所有记录,检查日期+ payment_days是否超过当前日期,并在另一个表中插入一个带有运算符id的通知.

我希望你能帮助我,谢谢.

小智 5

你可以这样做:

INSERT INTO notifications(text, id_operator)
SELECT 'notification text', id_operator
FROM jobs
WHERE payment_status = 0
  AND CURRENT_DATE <= DATE(DATE_ADD(`date`, INTERVAL payment_days DAY));
Run Code Online (Sandbox Code Playgroud)

使用INSERT INTO ... SELECT ...您可以选择结果并将它们插入另一个表中.

  • 如果您交换公式,那么MySQL可以使用索引. (2认同)