合并查询(SELECT + UPDATE)

时间:2018-11-07 11:54:01

标签: mysql

我有一些要合并的查询。但是我似乎无法正常工作。该怎么办?

这是第一名:

SELECT MIN(publish_date) publish_date, magazine_id
FROM published
GROUP BY magazine_id

这是第二名:

UPDATE magazine SET first_published_on = :publish_date WHERE id = :magazine_id

在这种情况下,我想将SELECT查询中的数据用于UPDATE查询中。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以在下面使用UPDATE JOIN尝试

UPDATE magazine
INNER JOIN (
    SELECT MIN(publish_date) publish_date, magazine_id
    FROM   published
    GROUP BY magazine_id
) a ON a.magazine_id=magazine.id
SET first_published_on = a.publish_date