MYSQL - 如何从表中选择SELECT后更新

时间:2014-03-31 07:42:44

标签: mysql sql sql-update mysql-select-db

我想在选择一个表

之后更新一列
SELECT id_copies, id_shop, id_dvd 
FROM dvd_copies
WHERE id_dvd = '001-192.168.1.103-6' AND id_shop='002'
ORDER BY id_copies DESC
LIMIT 2;

我只有2行我想要更新 我怎么能更新这些行?

2 个答案:

答案 0 :(得分:3)

您可以在更新查询中使用嵌套选择,请注意它将使用相同的值更新您的行 每行没有不同的值

UPDATE dvd_copies 
SET your_column_to_update ='your value'
WHERE id_copies IN(
    SELECT t.id_copies FROM 
    (SELECT id_copies
        FROM dvd_copies 
        WHERE id_dvd = '001-192.168.1.103-6' AND id_toko='002'
        ORDER BY id_copies DESC LIMIT 2
    ) t
)

答案 1 :(得分:3)

您还可以执行以下操作:

UPDATE dvd_copies
SET your_column_to_update ='your value'
WHERE id_dvd = '001-192.168.1.103-6' AND id_toko='002'
ORDER BY id_copies DESC
LIMIT 2