Используйте PL/SQL для возврата периода времени, к которому в данный момент принадлежит systimestamp

Т.е.

  • Я планировал разделить 24 часа на 24 секции (по 1 часу на каждую секцию): с 00:30:00 до 01:29:59 в качестве 1-й секции и т. Д.

  • Текущий systimestamp = "02-NOV-15 06.13.49.000000000 PM"Я хочу получить SQL, которые могут возвращать период времени с 5:30:00 до 6:29:59 PM, который является периодом времени, к которому в данный момент относится метка systime.

Я понятия не имею, как написать этот SQL для начинающих, спасибо за любой ваш вклад.

1 ответ

Вы можете вычесть полчаса, усечь значение и затем добавить обратно полчаса. Что-то вроде этого:

select trunc(systimestamp - 0.5/24, 'hh') + 0.5/24

Вы также можете использовать interval '30' minute:

select trunc(systimestamp - interval '30' minute, 'hh') + interval '30' minute
Другие вопросы по тегам