Я создал отчет, но я остановился на препятствии, которое может быть очень простым для вас, но я не могу думать ни о каком методе, который позволил бы мне решить мою проблему.Условный ГДЕ в соответствии с параметром
Я создал отчет, основанный на SQL запросе (с несколько КТРОМ), которые должны быть параметризованным так:
where
deliverydate between @FromDate and @ToDate
and
carrierid = @Carrier
И это работает до сих пор. Но я хочу создать еще один параметр, который будет иметь 3 значения. И в зависимости от этих значений я хочу получить все записи, которые будут соответствовать этому условию. Сорта так:
- , когда значение параметра = 1, то я хочу, чтобы получить все записи
- , когда значение параметра = 2, то я хочу каждую запись, где column1 <> column2
- , когда значение параметра = 3, то Я хочу получить каждую запись, где column1 = column2
Столбец1 и столбец2 являются столбцами из отчета, который я создал. Итоговые выберите выглядит следующим образом:
SELECT SALESID ,
CARRIERID ,
dlvmodeid ,
SUM(totalweight) AS totalweight ,
SUM(totalcharges) AS totalcharges ,
TOTALCHARGESCURRENCY ,
SUM(HowManyPackagesForThisSO) AS HowManyPackagesForThisSO ,
SUM(HowManyPackagesForThisSO_st) AS HowManyPackagesForThisSO_st ,
SUM(InHowManyDays) AS InHowManyDays ,
SUM(cspjnumber) AS HowManyPackingSlip
FROM countingcte
WHERE deliverydate BETWEEN @FromDate AND @ToDate
AND carrierid = @Carrier
GROUP BY SALESID ,
CARRIERID ,
dlvmodeid ,
TOTALCHARGESCURRENCY
Кто-нибудь знает решение моей проблемы?
Точные столбцы, которые я имею в виду, это HowManyPackagesForThisSO и HowManyPackagesForThisSO_st.
Это сработало! Благодарим вас за помощь и время, которое вы пожертвовали, чтобы читать и решать мою проблему;] – M3How