SQL从日期字段中挑选最新日期

时间:2011-07-14 17:05:45

标签: sql sql-server tsql

所以我有一个带有日期列的表。我希望能够通过某种类型的Item字段对这些日期进行分组。例如,我可能有一个名为Item的列,在Item字段中可能有500个条目。项目12345可能有5个entires,每个都有价格。我希望能够提取所有项目,按最新日期分组。

031126-2M1                          8/10/2011 12:00:00 AM   7.8678
031126-2M1                          7/22/2011 12:00:00 AM   9.5620
031126-2M1                          7/15/2011 12:00:00 AM   8.8090

在这个例子中,我想显示最近日期的项目,7/15/2011所以我可以使用8.8090的价格。然后该列表将显示其他项目,一些可能有一个条目,其他可能有很多,但我想用壁橱日期显示所有这些项目。需要帮助!

由于

2 个答案:

答案 0 :(得分:1)

MS SQL Server版本......

WITH
  sorted_data AS
(
  SELECT
    ROW_NUMBER() OVER (PARTITION BY item_id ORDER BY item_date DESC) AS row_id,
    *
  FROM
    item_data
  WHERE
    item_date <= getDate()
)

SELECT * FROM sorted_data WHERE row_id = 1

答案 1 :(得分:-3)

从表中选择* 这是=那个 分组的东西有这个。 按日期排序。

拥有“THIS”应该在查询中。

希望这会有所帮助..

干杯