如何获取SQL中的最新日期?

我想做一个SQL查询,从日期列中获取今天的日期和最近的日期。因此,如果我的数据库中有三个记录,这些记录具有以下日期:

  • 2012年3月8日
  • 2012年3月2日
  • 2011年12月8日

我希望SQL查询返回2012年3月8日和2012年3月2日(最近的日期)的所有记录。我怎样才能做到这一点?

我可以使用以下方法来约会今天的日期:

CONVERT( varchar(100), DATEADD( DAY, 0, getdate() ), 111)

谢谢你

编辑:谢谢大家。我还有一个问题。我创建了两个视图:

create view with top dates

CREATE VIEW topDates AS

select DISTINCT TOP 3 replace(CONVERT(VARCHAR(20),date,111),'-','/') AS dates from CSAResults.dbo.Details

create view dateTwo

select *

from (select ROW_NUMBER() over (order by dates desc) as srNo, dates

from topDates)

AS employee

WHERE srNo=2

现在我想从数据库中选择*,其中列等于视图“ dateTwo”中的“ dates”列

select buildNumber

from CSAResults.dbo.Details

where buildNumber LIKE '%Main '+ (SELECT dates FROM dateTwo) + '%'

但这什么也没有返回。

谢谢

回答:

您可以执行以下操作:

select date

from yourtable

where

(

date = Convert(varchar(10), getdate(), 101)

OR

date IN (SELECT Max(date)

FROM yourtable

WHERE date!= Convert(varchar(10), getdate(), 101))

)

以上是 如何获取SQL中的最新日期? 的全部内容, 来源链接: utcz.com/qa/420559.html

回到顶部