как передать несколько значений даты в одну переменную в sql - PullRequest
0 голосов
/ 27 февраля 2020

Невозможно передать несколько значений даты.

declare @Exdate date
set @Exdate = '2020-2-26','2020-2-27'

select * 
from X 
where Ex_Date in (@Exdate)

Ответы [ 2 ]

0 голосов
/ 27 февраля 2020

Если вам нужны разные значения даты и времени, вы можете объявить переменную таблицы:

declare @Exdate table (
 date_value date
)
insert into @Exdate (date_value)
values ('2020-2-26'),('2020-2-27')
select *
from X where Ex_date in (select date_values from @Exdate)
0 голосов
/ 27 февраля 2020

Вам нужно вызвать функцию split:

select x.* 
from X cross apply
     dbo.splitfn(@Exdate, ',') as spt(dateval)
where x.Ex_Date = dateval;

Ваша переменная (@Exdate) должна содержать одну строку, не кратную:

set @Exdate = '2020-2-26, 2020-2-27'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...