我需要来自表employee
的反向数据,如
select empid, name, place, position, date_of_joining where status=active
将检索到的数据保存在调度程序中的循环中。如果名为position
的列为Software engineer
且date_of_joining
> 01-01-2010,那么empid,名称,地点,位置必须保存在另一个表名valid_employees
如何为此编写调度程序? 我之前从未写过调度程序。我是这个话题的新手。请帮忙。
提前致谢
答案 0 :(得分:1)
CREATE EVENT上的MySql文档完全描述了如何在mysql中设置事件的示例。
在事件正文中(在DO之后),您需要编写一个insert ... select ...语句,该语句将记录传输到有效的employees表。它将是这样的:
INSERT IGNORE INTO valid_employees
(empid, name, place, position, date_of_joining, status)
SELECT (empid, name, place, position, date_of_joining, status) FROM employees
WHERE status='active' and position='Software Engineer' and Date('2010-01-01')<date_of_joining
但我会考虑使用上面的选择在employees表上创建一个视图,然后您不必创建事件并将数据传输到另一个表。这可能是一个更有效的解决方案,但我们不知道细节,以提出哪个是更好的解决方案。
答案 1 :(得分:0)
以下语句创建一个每分钟执行一次的重复事件,并在创建时间后的1小时内过期。然后等待1分钟,检查表格并查看是否添加了记录:
using