mysql - 使用下几行的最小值更新行列
问题描述
我想使用接下来的几行更新行。
我有类似的数据库
id Product_number qty parent_id type
1 AAAA null PRODUCT
2 bbb 5 1 ITEM
3 ccc 8 1 ITEM
我将这种类型的数据放入表中,因此我想使用其中 parent_id 是具有列类型值 PRODUCT 等的行的 id 的那些行的最小值来更新类型为 PRODUCT 的行的 qty 列
所以结果应该是
id Product_number qty parent_id type
1 AAAA 5 null PRODUCT
2 bbb 5 1 ITEM
3 ccc 8 1 ITEM
解决方案
这是你想要的吗?
update t join
(select parent_id, min(qty) as min_qty
from t
group by parent_id
) tt
on t.id = tt.parent_id
set t.qty = tt.min_qty
where t.qty is null and t.type = 'ITEM';
推荐阅读
- php - 将相同的键组合在一个数组中并在 php 中打印
- django - 用户可以在 Django 中拥有其他用户吗?
- laravel - 如何在没有注册用户身份验证的情况下保护公共 API 请求
- javascript - Angular 8解析器未解析
- arrays - 过滤和映射数组时的SwiftUI EXC_BAD_INSTRUCTION
- linux - Julia 1.4.1 无法启动,但 1.3.1 没有。问题是什么?
- python - 如何在 Django select2 中使用依赖的链式下拉列表
- excel - Excel 将内容从一张纸复制到另一张纸,无需 VBA/宏
- python - 使用 BeautifulSoup 进行网页抓取问题
- apache-flink - Flink Stateful Functions 2.0 异步等待期间的多次调用