Сведения о вопросе

Fhohir

18:54, 14th August, 2020

Теги

SQL    

[SQL] Проверить, лежит ли один диапазон дат в другом

Просмотров: 467   Ответов: 4

Добрый день.
Помогите, пожалуйста, составить SQL-запрос.

Есть две даты.
Нужно проверить, что интервал между этими данными не попадает в интервал дат в таблице БД. А также, что интервал дат в таблице не попадает в интервал между данными датами.



  Сведения об ответе

lats

17:05, 17th August, 2020

ну так
select * from table t
where 
not
(
{$fromDate} between t.date1 and t.date2
or
{$toDate} between t.date1 and t.date2
)
</sql>


  Сведения об ответе

lool

23:49, 12th August, 2020

declare date1 datetime;
declare date2 datetime;
set @date1 = '2010-12-03';
set @date2 = '2010-12-07';

select * from table t where t.date not between @date1 and date2;


  Сведения об ответе

$DOLLAR

04:54, 12th August, 2020

`start` < #end AND `reservation`.`end` > #start
Где #start и #end соответственно ваш диапазон


  Сведения об ответе

repe

22:56, 27th August, 2020

SELECT * FROM dates d WHERE NOT (
  (my_from < d.date_from AND my_to < d.date_from)
  OR
  (my_from > d.date_to AND my_to > d.date_to)
)


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться