Как сравнить диапазон даты и времени между 4 столбцами даты и времени в SQL Server - PullRequest
0 голосов
/ 23 мая 2019

В моей таблице 4 столбца даты и времени way_point.Четырьмя столбцами являются

scheduled_a, checkin_time, no_later_than, no_earlier_than

Теперь я хочу посмотреть, попадают ли значения в scheduled_a, checkin_time в диапазон столбцов no_later_than и no_earlier_than.

Этокод, который я написал, но я получаю эту ошибку:

Выражение не-логического типа, указанное в контексте, где ожидается условие, рядом с 'и'.

Код:

select 
    customer_id, position 
from 
    way_points 
where 
    position = 2 
    and [scheduled_a] and [checkin_time] between [no_later_than] and [no_earlier_Than]

Position - это еще один столбец, который я должен использовать в качестве условия где.Но в основном я застрял в сравнении столбцов даты и времени.

Есть идеи, где я могу ошибаться, пожалуйста?Спасибо.

1 Ответ

0 голосов
/ 23 мая 2019

Вы были почти там.Вам нужно разделить его на два разных условия.Не могу сказать, больше ли no_later_than или no_earlier_than.После between первый аргумент должен быть меньшим.Например, если no_later_than = '2016-02-22' и no_earlier_than = '2016-02-23', то no_later_than является меньшим аргументом.

select customer_id,position 
from way_points where position=2 
and [scheduled_a] between no_later_than and [no_earlier_than]
and [checkin_time] between no_later_than and [no_earlier_than]
...