我想根据给定的日期值从数据库中获取记录。我使用 Timestamp 作为列类型。我使用查询作为
SELECT *
FROM table1
WHERE LAST_UPDT_S = to_date('23-AUG-12')
得到空表。表中存在记录。
请帮我解决这个问题。
提前致谢。
我想根据给定的日期值从数据库中获取记录。我使用 Timestamp 作为列类型。我使用查询作为
SELECT *
FROM table1
WHERE LAST_UPDT_S = to_date('23-AUG-12')
得到空表。表中存在记录。
请帮我解决这个问题。
提前致谢。
可能是您的表格包含带有时间部分的日期,因此请尝试使用:
SELECT *
FROM table1
WHERE Trunc(LAST_UPDT_S) = to_date('23-AUG-12')
通常最好使用时间范围 - 如果存在索引,这会打开使用索引的可能性:
SELECT *
FROM table1
WHERE LAST_UPDT_S >= DATE '2012-08-23'
AND LAST_UPDT_S < DATE '2012-08-24'
(另外,最好不要在没有指定日期格式的情况下使用 TO_DATE,否则它将使用当前会话的 NLS 设置。)