У меня есть список значений DateTime, и для каждого значения мне нужно извлечь что-то из базы данных. Я хотел бы сделать это с помощью одного запроса. Я знаю, что можно передать таблицу (список) в хранимую процедуру, но я не уверен, как написать сам запрос.
Допустим, у меня есть следующая таблица:
CREATE TABLE Shows(
ShowId [int] NOT NULL,
StartTime DateTime NOT NULL,
EndTime DateTime NOT NULL
)
и массив дат
DECLARE @myDateArray MyCustomDateArrayType
Теперь, если бы я выбирал один элемент, я написал бы запрос, подобный этому:
SELECT * FROM Shows
WHERE StartTime > @ArrayItem and @ArrayItem < EndTime
где @ArrayItem - элемент из @myDateArray.
Но как мне сформулировать запрос, который будет извлекать информацию для всех элементов массива?