• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Работа с датами

  • Автор темы Sh00r00p
  • Дата начала
S

Sh00r00p

каким образом можно
определить входит ли в период который составляют 2 поля месяц переменной в которой лежит дата(вообще говоря это поле)

Что-то вроде
select * from table where
period_begin <= trunc(TO_DATE('03.01.2003','MM/DD/YYYY'),'mm')
and period_end >= trunc(add_months(TO_DATE('03.01.2003','MM/DD/YYYY'),1),'mm')-1

но, данные TO_DATE('03.01.2003','MM/DD/YYYY') это переменная, и надо менять дни на 1-е число месяца или просто сравнивать с принадлежностью к месяцу.
 
A

abv

не совсем понял постановку задачи, но думаю, что функция extract вам поможет, например
select * from table where extract(year from dt)=2003 and extract(month from dt)=1
 
O

ooo

Непонятна постановка задачи. С интервалом дат сравнивается дата или с интервалом месяцев сравнивается месяц. Если надо последний день месяца узнать, то можно использовать
last_day(to_date('03.01.2003','MM/DD/YYYY')).
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!