Необходимо получить записи из БД на текущую дату (без учета времени) - PullRequest
0 голосов
/ 18 декабря 2018

Я написал запрос ниже, чтобы получить записи:

Select * 
  from Scf_Invoice i 
 where cast(i.inv_Acceptance_Date as date) = TO_DATE('2018-12-18', 'YYYY-MM-DD');

Но я не получаю результата даже если есть 2 записи на указанную дату.Я думаю, что это также время.Когда я делаю

Select * 
  from Scf_Invoice i 
 where cast(i.inv_Acceptance_Date as date) > TO_DATE('2018-12-18', 'YYYY-MM-DD');

, я получаю результаты, но я хочу получить эти результаты, используя параметр '='.Какие изменения я должен сделать в моем запросе?

Ответы [ 2 ]

0 голосов
/ 18 декабря 2018
Select * 
  from Scf_Invoice i 
 where trunc(i.inv_Acceptance_Date) = TO_DATE('2018-12-18', 'YYYY-MM-DD');

или

Select * 
  from Scf_Invoice i 
 where trunc(i.inv_Acceptance_Date) = trunc(sysdate);

для получения данных, равных текущей дате

0 голосов
/ 18 декабря 2018

Используйте усечение для получения дня

  trunc(i.inv_Acceptance_Date) =

Функция TRUNC (дата) возвращает дату с временной частью дня, усеченной до единицы, заданной моделью форматаFMT.Возвращаемое значение всегда имеет тип данных DATE, даже если для даты указан другой тип данных datetime.Если вы опустите fmt, то дата будет усечена до ближайшего дня .

Select * 
from Scf_Invoice i 
where trunc(i.inv_Acceptance_Date) = TO_DATE('2018-12-18', 'YYYY-MM-DD');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...