【问题标题】:Select Distinct for only one column of value for Access为 Access 的一列值选择 Distinct
【发布时间】:2012-07-21 13:40:10
【问题描述】:

我想做一个产品页面的datalistview。

这是我现在使用的:

SELECT DISTINCT pProductDesign, pProductImage 
FROM Product 
WHERE (pProductDesign IS NOT NULL) 
ORDER BY pProductImage

结果是:

pProductDesign|pProductImage

128101 |~/Images/128101-Cream.jpg
128101 |~/Images/128101-Gold.jpg

128101 |~/Images/128101-Khaki.jpg

8680C |~/Images/8680C-Cream.jpg

8680C |~/Images/8680C-Gold.jpg
8680C |~/Images/8680C-Khaki.jpg

但我想要的只是:

pProductDesign|pProductImage

128101 |~/Images/128101-Cream.jpg

8680C |~/Images/8680C-Khaki.jpg

还有办法吗!?

【问题讨论】:

  • 您为每个ProductDesign 选择哪个ProductImage 的标准是什么?也就是说,为什么Cream128101 的正确选择,而Khaki8680C 的正确选择?
  • @goric 这不是一个正确的选择,因为我在做设计的类别页面,所以我只需要唯一的产品设计名称及其任何相应的图像作为示例显示。

标签: sql select distinct


【解决方案1】:

如果您只是在寻找 ProductDesigns 的不同列表和一些任意关联的 ProductImage 列表(如 cmets 中所述),您可以使用任何聚合函数(minmax , average) 和 group by:

select ProductDesign, max(ProductImage)
from Product
where ProductDesign is not null
group by ProductDesign

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-08
    • 2016-03-28
    • 2015-05-23
    相关资源
    最近更新 更多