首页 > 解决方案 > 我想从 SQL 中的表中更新数量,从检查 MIN(ExpDate) 和条形码

问题描述

SQL_Update 问题..

一个表可以在同一个条形码下有多个具有不同 ExpDate 的项目

例如:

1.* ExpDate - 2019.05.05,
      Qty - 45,
      SellPrice - 150.00,
      Barcode - 2,

2.* ExpDate - 2020.08.01,
      Qty - 34,
      SellPrice - 230.00,
      Barcode - 2,

我想更新数量,当条形码为 2 和 MIN(ExpDate)

标签: mysql

解决方案


您可以使用带有子查询的连接来获取最小日期

update  my_table  m
inner join  (
  select  barcode, min(ExpDate) min_date
  from my_table  
  group by  barcode
) t on t.barcode = m.barcode and t.min_date = m.expdate 
where m.barcode = 2 
set qty = Your_value 

推荐阅读