我只是试图在特定的时间戳范围内获取结果。我仅给出日期,因此我将“00:00:01”添加到最新版本,并将“23:59:59”添加到迄今为止。Oracle查询中的时间戳范围
我已经试过
WHERE DATE_SENT > (to_timestamp($P{FROM_DATE}||'00:00:01'))
DATE_SENT < (to_timestamp($P{TO_DATE}||'23:59:59'))
和
WHERE DATE_SENT BETWEEN (to_timestamp($P{FROM_DATE}||'00:00:01')) AND (to_timestamp($P{TO_DATE}||'23:59:59'))
然而,无论似乎工作。如果日期和日期都是同一日期,我只是不会收到任何数据。当我使用to_date并删除时间部分时,使用< =和> =并且两个日期相同,我再也没有结果。
我读到'BETWEEN'是包容性的,但在结果中没有看到。表格字段实际上是时间戳。
'TO_DATE'和'TO_TIMESTAMP [_TZ]'功能应该总是(如总是)包括格式掩码,以避免在'NLS_DATE_FORMAT'和/或'NSL_TIMESTAMP [_TZ] _FORMAT'设置变化引起的错误。 – Sentinel