【发布时间】:2012-03-26 09:19:15
【问题描述】:
Oracle (10g) 是否在此处进行了正确的 TIME 比较,还是我需要转换为十进制时间然后进行比较?例如,
IF (SELECT TO_CHAR(sysdate,'HH24:MI:SS') from dual) <= '15:00'
THEN (...)
谢谢。
【问题讨论】:
-
这只是比较两个字符串。这甚至执行吗?它既不是 SQL 也不是 PL/SQL。试试这样的:
IF SYSDATE <= TRUNC(SYSDATE) + (15/24) THEN ... -
如果您的意思是“时间必须在在或之前下午 3 点”,那么您需要“ 下午 3 点之前”,那么您可以执行“TO_CHAR(sysdate,'HH24')
标签: sql oracle date-arithmetic to-char