mysql - 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))
解决方案
这是做你想做的吗?
UPDATE pricelist pl
SET pl.price = '23'
WHERE pl.material_id = 1936
ORDER BY pl.import_date DESC
LIMIT 1;
推荐阅读
- sql - 如何在 Spark SQL 中执行正则表达式
- blockchain - Solidity pragama 不允许任何低于 0.8.9 的值
- docker - 如何在 Docker 内将 NGINX 反向代理到 proxy_pass 到主机
- r - 使用 sf::st_write() 将空间数据从 R 写入 MS SQL Server
- github - 如何只在 GitHub 主分支上运行 CircleCI?
- bit-manipulation - +/- 形式的位
- c++ - 为什么我的 OpenMP 程序不随线程数扩展?
- javascript - Vue js-当值达到0时隐藏减号按钮并取消隐藏加号按钮
- python - 对 VideoWriter 的调用中的 size 参数应该是什么?
- html - 移动设备上的 HTML 导航栏内联项目