Как добавить параметр год в запрос SQL? - PullRequest
0 голосов
/ 16 мая 2019

Я создаю отчет для сравнения продаж за два года с использованием отчетов Crystal. Мне нужно добавить параметр Year, чтобы отфильтровать данные, введя годы в параметрах CurrentYear и PreviousYear. Как я могу это сделать?

Я пробовал ниже запрос, но проблема в том, как добавить параметр в статистическую функцию?

DECLARE @CompareYear varchar(50),
@CurrentYear varchar(50)

SELECT 
    ISNULL(sp.Telephone,'No Sales Employee'),
    od.CardCode,
    od.CardName,
    Sum(case when Year(od.DocDate)=@CompareYear then od.DocTotal else 0 end) as Sold2018,
    Sum(case when Year(od.DocDate)=@CurrentYear then od.DocTotal else 0 end) as Sold2019
FROM
    ORDR od
Left Join OSLP sp
    On od.SlpCode=sp.SlpCode
Group By
    sp.Telephone,
    od.CardCode,
    od.CardName
having(Sum(case when Year(od.DocDate)=@CompareYear then od.DocTotal else 0 end) < Sum(case when Year(od.DocDate)=@CurrentYear then od.DocTotal else 0 end))

1 Ответ

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

Если я правильно поймаю вашу цель, вам нужно добавить YEAR(od.DocDate) как в предложениях GROUP BY, так и SELECT.

...