0

我正在尝试根据输入的日期从我的数据库中获取最后一个条目。sql 不能完全按照我的意愿工作。这是我的sql

SELECT TOP 1 * FROM BILLS_HITS ORDER BY DATETIMEADD DESC

有人能看出它有什么问题吗?sql 返回日期为“6/6/2012 7:10:11 AM”的记录,而不是 2012 年 6 月 10 日的记录。

4

1 回答 1

3

使用更多与数据库无关的方法:

SELECT *
FROM
    BILLS_HITS
WHERE
    DATETIMEADD = (SELECT MAX(DATETIMEADD) FROM BILLS_HITS)

TOP关键字更特定于 MSSQL,而上述查询适用于大多数其他 DBMS,包括 MSSQL。

此外,为了快速进行选择,您可能希望在列上放置一个索引DATETIMEADD

如果它不起作用,请确保该DATETIMEADD列是正确的日期/日期时间类型,而不仅仅是 varchar/char/text 字符串。

于 2012-06-12T01:32:02.090 回答