MySQL - 如果字段记录不相同,则更新行

时间:2018-06-10 00:05:22

标签: mysql database

我的数据库中有两个表。 例如t1和t2。 脚本每隔一分钟更新一次t1记录。 我需要将t1记录(行)复制到t2,如果它不存在或者字段中的数据不相同。

以下是脚本更新后需要执行的步骤t1 table:

  1. 数据库将t1记录与t2
  2. 进行比较
  3. 如果某些t1记录不相同/缺少,则在t2中插入/更新它。
  4. 这就像比分直播。我只需要更新/插入/删除受影响的行而不是整个表。

    感谢您的帮助:)

1 个答案:

答案 0 :(得分:0)

为不同的动作创建两个触发器

用于更新操作

def closest_node(node, nodes):
    nodes = np.asarray(nodes)
    dist = np.sum((nodes - node)**2, axis=1)
    return np.argmin(dist)

mouse_xy = (20, 20)
closest_centroid = centers[closest_node(mouse_xy, centers)]

print(closest_centroid)

[30, 30]

用于插入操作

create trigger update_t1
after update  on t1 for each row
begin

select count(*) from t2 where id=New.id  into @num;

if @num=0 then
/*insert into t2; */

else
/*update t2 */
end if;
end;