0

这是获取最近日期的 id 值的最佳方法吗?

table1
id,entrydate
1,8/23/2012
2,8/24/2012
3,8/23/2012

select id from table1 where entrydate = ( select MAX(entrydate) from table1 )
4

5 回答 5

1

你已经有一个好方法了。我会注意关系:

select top id from table1 where entrydate = ( select MAX(entrydate) from table1 )

当然,这是假设您使用的是 SQL Server。

于 2012-08-24T14:39:53.237 回答
1

假设您使用的是 SQL-Server,您可以使用ORDER BY然后取一行:

SELECT TOP 1 id
FROM table
ORDER BY entrydate DESC

在 MySql 中是LIMIT

SELECT id
FROM table
ORDER BY entrydate DESC
LIMIT 1

在甲骨文中:

SELECT id
FROM (SELECT id FROM table ORDER BY entrydate DESC) 
WHERE ROWNUM = 1
于 2012-08-24T14:40:11.730 回答
0
SELECT id FROM table1 ORDER BY entrydate DESC LIMIT 1
于 2012-08-24T14:39:23.237 回答
0

你应该能够做到SELECT id FROM table1 ORDER BY entrydate DESC LIMIT 1

于 2012-08-24T14:39:31.240 回答
0

不完全是,你想这样做:

对于 SQL Server:

SELECT TOP 1 id, MAX(entrydate) FROM table1 GROUP BY id

对于 MySQL:

SELECT id, MAX(entrydate) FROM table1 GROUP BY id LIMIT 1
于 2012-08-24T14:41:56.093 回答