我的问题是尝试使用SELECT语句并按某一列对前10名进行排序。在搜索了很多论坛后,我设法编译了一些东西,但是我需要确认一个字段中的时间戳是在上周内。我已经让它执行了,但是我不确定这是否正确,因为我不能打印where子句的值:
SELECT itemid, count(itemid)
FROM Rateddate
WHERE TO_CHAR(CURRENT_TIMESTAMP - DATE_RATED) < TO_CHAR(7)
GROUP BY itemid;TLDR:
TO_CHAR(CURRENT_TIMESTAMP - DATE_RATED) < TO_CHAR(7)这是否确保date_rated时间戳不到一周的时间?
发布于 2012-05-12 02:16:37
更有意义的是这样说
WHERE date_rated > sysdate - interval '7' day如果你想要过去168小时的数据。你可能想要
WHERE date_rated > trunc(sysdate) - interval '7' day如果你想要7天前某一天的任何时间的数据,而不是关心它当前的时间。
发布于 2012-05-12 02:17:09
这对你来说不是很有效吗:
trunc(CURRENT_TIMESTAMP - DATE_RATED) < 7这里假设DATE_RATED是一个日期字段。如果没有,则需要先用TO_DATE()进行转换。
https://stackoverflow.com/questions/10556487
复制相似问题