我有一个名为CLOCK
的表,其中包含2列ID
,这是一个数字,而CLOCK_IN
是一个日期。 ID
列已重复编号,我想选择具有最新CLOCK_IN
的ID。
就像说该表有以下数据:
+--+---------+
|ID|CLOCK_IN |
+--+---------+
|02|1/14/2013|
+--+---------+
|04|1/14/2013|
+--+---------+
|02|1/20/2013|
+--+---------+
|03|2/13/2013|
+--+---------+
我想获得第2,3,4行,因为它们是该ID的最新clock_ins。
答案 0 :(得分:2)
SELECT ID, MAX(CLOCKIN)
FROM CLOCK
GROUP BY ID
请注意,您的列ID
不能单独作为PRIMARY KEY(在您的数据示例中),我想这两列会使PRIMARY KEY复合。
答案 1 :(得分:2)
group by和max应该适合你。
SELECT ID, MAX(CLOCK_IN)
FROM CLOCK
GROUP BY ID
答案 2 :(得分:0)
试试这个
SELECT * FROM
(
SELECT
ROW_NUMBER() OVER (ORDER BY Clock_IN ASC) AS RN,ID,Clock_IN
From Clock
) AS Temp
WHERE RN = 1
希望这能帮到你