Я работаю над хранимой процедурой и пытаюсь уменьшить размер блоков IF и спрашиваю себя, возможно ли определить предложение GROUP BY на основе параметра.Я покажу вам, что я имею в виду:
Это не код SQL, а написано о том, что я пытаюсь достичь ...
SELECT...
GROUP BY
IF @groupBy = 0
DATEPART(yy, MyDBDateField)
ELSEIF @groupBy = 1
DATEPART(yy, MyDBDateField),
DATEPART(m, MyDBDateField)
ELSE
DATEPART(yy, MyDBDateField),
DATEPART(m, MyDBDateField),
DATEPART(d, MyDBDateField)
Итак, я пытаюсьсгруппировать мои данные по году, месяцу или дню в зависимости от параметра.Звучит просто, но похоже, что я должен скопировать и вставить оператор в блоки IF.
Любая помощь приветствуется - спасибо!