SQL - 多个描述 - 返回第一个值

  • 本文关键字:第一个 返回 SQL 描述 sql
  • 更新时间 :
  • 英文 :


SQL新手问题在这里。

我有一张桌子: 表 - [产品] - 下面有列

ProductID, ProductDesc
DRILL01    Drill Bits
DRILL02    Drill Other
DRILL01    Drill Set
DRILL01    Drill Bits Set
....

希望返回第一场比赛,例如

DRILL01    Drill Bits
DRILL02    Drill Other

我已经尝试过分组,但没有看,并认为我可能需要一个 TOP 1 选项,但似乎无法解决它。 做了大量的搜索,但我一定错过了什么。

任何帮助他都会很棒。

您可以使用ROW_NUMBER

SELECT *
FROM (SELECT *,
ROW_NUMBER() OVER(PARTITION BY ProductId ORDER BY timestamp_col) AS r
FROM tab)
WHERE r=1;

为了获得稳定的结果,您必须决定如何获得每个ProductId组的"第一个"值。例如,通过按某种时间戳/标识列排序。

相关内容

最新更新