在SQL中选择最小日期

时间:2013-07-15 07:54:57

标签: sql sql-server

我有一张桌子。我想选择最短日期和相应的票证状态。我试过但是却向我展示了两个或更多的牌号。只想要思想。感谢

Date       PlateNo     TickeStatus
01-15-12       A        Open
01-23-12       c        Open
01-17-12       A        Close
02-23-12       c        Open
02-15-12       A        Open
03-23-12       c        Open
03-15-12       A        Close
03-28-12       c        Close
04-15-12       A        Open
04-23-12       c        Close

5 个答案:

答案 0 :(得分:3)

select top 1 * from TableName order by [Date]

通过这种方式,您将获得所有相关数据

答案 1 :(得分:3)

SELECT PlateNo, TicketStatus, [Date]
FROM (SELECT ROW_NUMBER() OVER (PARTITION BY PlateNo ORDER BY [Date] ASC) AS [index],
             PlateNo,
             TicketStatus,
             [Date] 
      FROM YourTable) A
WHERE [index] = 1

答案 2 :(得分:1)

但我建议您将 Date 字段更改为其他字段名称,例如 the_date 。 这只是为了避免与SQL语法发生冲突。

SELECT *, MIN(the_date) AS min_date FROM YOUR_TABLE;

答案 3 :(得分:1)

如果我记得很清楚,你必须在使用Min时放一个小组

SELECT  MIN(date), PlateNo, Ticket_status
FROM your_table
GROUP BY date, PlateNo, Ticket_status

答案 4 :(得分:0)

ANSI标准。简单。适用于所有数据库......

select * from YourTable
where [Date] = (select min([Date]) from YourTable)