Предоставление параметров для функции SQL Server в представлении - PullRequest
0 голосов
/ 07 июня 2018

У меня есть представление

Create View v1 
as
    select a.Explanation1, a.Explanation2
    from fx_getData(null, null) data
    inner join Explanations1 a on data.Explanation1ID = a.ID
    inner join Explanations2 b on data.Explanation2ID = b.ID

Функция:

create function fx_getData
    (@year varchar(4) = NULL,
     @month varchar(2) = NULL)
return
(
    select *   
    from data 
    where year = @year and month = @month
)

Я хочу передать параметры этой функции из представления, иначе она будет работать очень долго.

Как я могу это сделать?

РЕДАКТИРОВАТЬ: параметры для представления должны исходить из пользовательского интерфейса для этого приложения.Это должен быть какой-то параметризованный вид, иначе запрос станет примерно таким: -

select * from v1 where year = 'y1'

Это позволит получить все из функции и выбрать из этих значений.Следовательно, он будет работать очень долго.

Как я могу сначала отфильтровать, а затем присоединиться?

...