MySQL - 自动/调度SQL更新表

时间:2016-09-28 19:58:37

标签: mysql database

我不是数据库工程。但我有一个关于MySQL数据库问题的可能性的问题。

是否可以编写SQL来从多个表中获取数据,然后使用这些数据(我们得到的)来更新新表? 此外,这项工作应该每天安排。

我问这个问题的原因是因为我处于这种情况: 我们的IT部门维护了一个大型数据库,但数据库/表格不符合我们部门的业务需求(我们只有读取权限)。我们的部门有一个小型数据库(拥有所有权限),我们可以使用自定义SQL创建一些特殊的表并每天更新它们。

回到这个问题,可以设置SQL并安排它以确保这些SQL不断更新我们的表吗?

非常感谢!!!

1 个答案:

答案 0 :(得分:0)

  

是否可以编写SQL来从多个表中获取数据   然后使用这些数据(我们得到的)来更新新表?

是的,这是可能的。您可以使用UPDATE .. JOIN构造使用SELECT语句从多个表中获取数据,然后使用该内联视图获取JOIN,并对其他表执行更新操作。

示例:

UPDATE Your_Table a 
    JOIN (
         //Select query to get data from multiple other tables
    ) xxx ON a.some_column = xxx.some_matching_column
SET a.column_c = xxx.column_c;
  

此外,这项工作应该每天安排

当然,请使用MySQL Event Schedular