№ Клейма за дата/час няма никакъв формат . Oracle не съхранява клеймото за дата/час във формата, който виждате. Форматът, който виждате, е само за дисплей предназначение. Датата се съхранява вътрешно в 7 байта, което е собственият формат на Oracle .
Разбира се, че бихте могли. Можете да използвате TRUNC което съкращава времевата част и оставя само датата, а типът данни остава като дата.
Например,
SQL> SELECT TRUNC(SYSTIMESTAMP) my_tmstmp FROM DUAL;
MY_TMSTMP
----------
2015-05-29
Така че получавате въведеното от потребителя в този формат като низ . Първо трябва да конвертирате го в DATE с помощта на TO_DATE и след това го сравнете.
Например,
WHERE TRUNC(dt_column) < TO_DATE('05/29/2015 12:07:58', 'MM/DD/YYYY HH24:MI:SS')
Както вече казах, ако искате да игнорирате частта от времето, тогава приложете TRUNC .
Прилагайки обаче TRUNC в колоната за датаната ще потисне всеки нормален индекс на тази колона. От гледна точка на ефективността е по-добре да използвате условие за период от време .
Например,
WHERE dt_column
BETWEEN
TO_DATE('05/29/2015 12:07:58', 'MM/DD/YYYY HH24:MI:SS')
AND
TO_DATE('05/29/2015 12:07:58', 'MM/DD/YYYY HH24:MI:SS') +1