首页 > 解决方案 > mysql UPDATE 语句 where pricelist.import_date = ( SELECT max(pricelist.import_date) )

问题描述

我试图在 mysql 中完成更新,它只选择最高的 import_date,我似乎无法让它工作。以下声明更新了两个价格

在此处输入图像描述

UPDATE material, pricelist
    SET price = '23'
WHERE material.id = 1936 AND
      material.id = pricelist.material_id AND
      pricelist.import_date = (SELECT max(pricelist.import_date))

标签: mysqlsql

解决方案


这是做你想做的吗?

UPDATE pricelist pl
    SET pl.price = '23'
WHERE pl.material_id = 1936
ORDER BY pl.import_date DESC
LIMIT 1;

推荐阅读