у меня есть проблема, сделав select, который показывал бы мне данные, всякий раз когда конечная дата была превосходящей настоящую ("в других словах, которые он настоящий"), проблема состоит в том, что select ты показываешь мне данные, которые уже не являются настоящими, или что experiraron. это select, который я использую:
select * from UTIC.UZGTFORMULARIOS where UZGTFORMULARIOS_FECHA_FIN >= TO_CHAR(sysdate,'DD/MM/RRRR')
поле UZGTFORMULARIOS_FECHA_FIN - тип varchar и дата сохраняет со следующим форматом DD / ММ / RRRR
поскольку они будут видеть, ты показываешь мне даты месяца, который произошел, и select был бы должен показывать только даты сегодняшнего дня для вперед. какая-то рекомендация
EstГЎs сравнивая цепи с цепями (CHAR)... Это одинокое harГЎ одна comparaciГіn alfabГ©ticamente (alfanumГ©ricamente???), но дата не может сравниваться asГ - правильно.
DeberГ-Схвати использовать
TO_DATE(UZGTFORMULARIOS_FECHA_FIN) >= TRUNC(sysdate)
Вместо того, чтобы перемещать sysdate CHAR, ты это оставляешь как Ваш тип, который ВОСХОДИТЕ, и ты это сравниваешь с другой колонной, после перемещая ее DATE.
TRUNC опциональный, служит для того, чтобы он только имел в виду дату, не час.
ВїEstГЎ уверенный в колонне UZGTFORMULARIOS_FECHA_FI он типа VARCHAR2?
, Если он asГ - должен использовать второго parГЎmetro ее funciГіn TO_DATE , чтобы показывать, как это string даты. Когда не используется второй parГЎmetro, тогда Oracle использует формат, что estГ© определенный для нее sesiГіn с, которая conectГі, и что зависит от переменной атмосферы NLS_LANG.
TO_DATE(UZGTFORMULARIOS_FECHA_FIN,'dd/mm/yyyy') >= TRUNC(sysdate)
'dd/mm/yyyy'
, плохая mí в. Если это также не функционирует, вероятно, что у тебя есть по крайней мере реестр, который не выполняет этот формат даты, и это (s) deberí схвати исправлять – DannyTalent 05.11.2019, 22:34