如何结合选择和更新MySQL

如何结合选择和更新MySQL,mysql,Mysql,我将数据和数据聚合到一个表中,基本上将数据从一个表移动到下一个表 目前,我正在从MySQL中选择所有数据,然后将其插入到新表中 有没有一种方法可以将这个查询组合起来,在MySQL中完成所有的工作,而不是先取出数据,然后再将数据放回MySQL 基本上,我想结合以下内容: '''update landing_pages_v3 set mobile_first_place_rankings=%s where id=%s''', data '''select count(keyword), lp_id

我将数据和数据聚合到一个表中,基本上将数据从一个表移动到下一个表

目前,我正在从MySQL中选择所有数据,然后将其插入到新表中

有没有一种方法可以将这个查询组合起来,在MySQL中完成所有的工作,而不是先取出数据,然后再将数据放回MySQL

基本上,我想结合以下内容:

'''update landing_pages_v3 set mobile_first_place_rankings=%s where id=%s''', data

'''select count(keyword), lp_id from keywords_v3 where profile_id=%s and device=%s and positions=1 group by lp_id''', (profile_id, device)

您可以在
更新中
将查询作为子查询加入

UPDATE landing_pages_v3 AS l
JOIN (
    SELECT count(*) AS ct, lp_id
    FROM keywords_v3
    WHERE profile_id=%s AND device=%s AND positions=1
    GROUP BY lp_id
) AS k ON l.id = k.lp_id
SET mobile_first_place_rankings = k.ct

select into应该做作业检查,但这是一个更新-它们不是很完美吗?我把所有的数据都取出来,然后再放回去。这看起来快多了!