SQL Server 2008:SELECT min(date)

时间:2016-07-25 18:26:45

标签: sql sql-server date select

我试图做一个简单的选择陈述,但我很难做到这一点。

我有一个包含这些列的表:

companyID, CompanyDept, DateAdded

我试图像这样做一个选择语句......

Select CompanyID, CompanyDept 
where min(dateAdded)

因此DateAdded有多个日期 - 我尝试最早CompanyDept选择COmpanyIDDateAdded

编辑:选择CompanyID,CompanyDEpt,其中dateAdded = MIN因为可能有三个或更多日期,例如10/1 / 2015,11 / 12 / 2015,1 / 4/2016 - (我的意思是数据行)I& #39;我试图选择这个日期,查看最早可能的日期(10/1/2016)

3 个答案:

答案 0 :(得分:2)

您可以尝试使用TOP 1获取第一条记录并按日期排序。

SELECT TOP 1
    CompanyID, CompanyDept
FROM 
    Table
ORDER BY 
    dateAdded

答案 1 :(得分:1)

不完全清楚你想要什么,但我认为你正在寻找。

with sortedResults as
(
    Select CompanyID
        , CompanyDept 
        , ROW_NUMBER() over (partition by CompanyID, CompanyDept order by dateAdded desc) as RowNum 
    from YourTable
)

select CompanyID
    , CompanyDept
from sortedResults
where RowNum = 1

答案 2 :(得分:1)

scope :receives_reminder_at, -> (time) do
  ready.where(reminder_time: time)
end

我假设你想要所有记录, 不?你想要旧的或新的1条记录 对于旧的做ASC和新的做DESC

SELECT CompanyID, CompanyDept 
FROM TableName 
order by dateadd ASC 

如果不在上面,请阅读以下内容: Q.你知道提前约会吗?是否有另一个列名称来比较日期。?

如果是,

select top (1)* from CompanyID, CompanyDept 
FROM TableName 
order by dateadd ASC