首页 > 解决方案 > 如何返回一个字段中的最小值,消除基于另一个字段的重复项?

问题描述

因此,对于 Access 2016 / SQL 来说非常新。我正在尝试制作以下数据集:

原始数据

需要是:

期望的结果

这里的逻辑是我需要为每个零售商中的每个产品找到最低 TCO,它的尺寸必须大于 999。请有人帮我解释一下。

谢谢,

更新:根据评论我更新了要求和简化数据:)

原始数据:在此处输入图像描述

预期数据:在此处输入图像描述

标签: sqlms-access

解决方案


如果您想要结果中的所有列,则可以使用NOT EXISTS

select
  t.*
from tablename t
where 
  t.size > 999
  and
  not exists (
    select 1 from tablename
    where product = t.product and retailer = t.retailer and size > 999 and tco < t.tco
  )

推荐阅读