Я хочу использовать переменную для определения условной GROUP BY в моей SQL заявление так:Условный GROUP BY с пользовательской переменной
group by
case when (@GroupByFirst is not null) then a.Name else b.Name end
К сожалению, я получаю сообщение об ошибке, что a.Name является
invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause
Есть ли какое-либо решение, чтобы заставить его работать. Забыл упомянуть, SQL является частью хранимой процедуры, но это не имеет никакого значения, я считаю
Вы можете показать свое заявление? – Jeremy
Каков весь запрос? –
Запрос довольно долго, но это пример дает ту же ошибку: объявить @GroupByFirst INT = 1 выберите sa.Name, счетчик (p.Id) из свойств р внутреннее соединение PropertyInfo pinfo на pinfo.Id = p.LiveInfoId внутреннее соединение SolicitorAccount sa on pinfo.SolicitorAccountId = sa.Id группа случай когда (@GroupByFirst не является нулевым), то sa.Name else sa.Name end – Bartosz