Erreur de clause GROUP BY

Je veux exclure un terme de la clause GROUP BY qui m'empêche d'avoir des termes résumés set. La chose étrange est que j'utilise le terme qui provoque cela dans une déclaration de cas, et la requête veut toujours que je l'utilise dans la clause group by, sinon elle va générer une erreur. Comment résoudre ce problème?

Pour être plus précis: Le vr.krebel qui est utilisé dans le cas dans la clause SELECT me force à l'append aussi à GROUP BY . Comment éviter cela?

 SELECT vr.ktonr, vr.foretagkod, '' AS persign, '' AS TYPE, NULL, 1 AS antal, SUM(vr.debbel-vr.krebel), 0, vr.kostbar, vr.koststallekod, vr.projcode, vr.redovisnar, vr.period, 'Allocated vouchers' AS artbeskr, ko.ktobeskr AS kodescr, CASE WHEN ((vr.ktonr LIKE '9600' OR vr.ktonr LIKE '3%') AND (vr.krebel>0)) THEN 'Revenues' ELSE 'Costs' END FROM vr INNER JOIN ko ON ko.ktonr=vr.ktonr AND ko.redovisnar=datepart(YEAR,vr.bokfdat) AND ko.foretagkod=vr.foretagkod WHERE vr.foretagkod = 300 AND vr.intsource = 20 AND vr.projcode = 50040 AND (vr.bokfdat BETWEEN CAST('2012-12-01' AS DATETIME) AND CAST('2012-12-31' AS DATETIME)) GROUP BY vr.ktonr, vr.foretagkod, vr.kostbar, vr.koststallekod, vr.projcode, vr.redovisnar, vr.period, ko.ktobeskr, vr.krebel 

Pour être plus précis: Le vr.krebel qui est utilisé dans le cas dans la clause SELECT me force à l'append aussi à GROUP BY , comment éviter cela?

Il y a différentes options ici. Mais je pense que le meilleur pour votre requête serait d'append votre cas dans le groupe par.

 select vr.ktonr, vr.foretagkod, '' as persign, '' as Type, NULL, 1 as antal, SUM(vr.debbel-vr.krebel), 0, vr.kostbar, vr.koststallekod, vr.projcode, vr.redovisnar, vr.period, 'Allocated vouchers' as artbeskr, ko.ktobeskr as kodescr, case when ((vr.ktonr like '9600' or vr.ktonr like '3%') AND (vr.krebel>0)) then 'Revenues' else 'Costs' end from vr inner join ko on ko.ktonr=vr.ktonr AND ko.redovisnar=datepart(year,vr.bokfdat) AND ko.foretagkod=vr.foretagkod where vr.foretagkod = 300 AND vr.intsource = 20 AND vr.projcode = 50040 AND (vr.bokfdat between CAST('2012-12-01' AS DATETIME) AND CAST('2012-12-31' AS DATETIME)) group by vr.ktonr, vr.foretagkod, vr.kostbar, vr.koststallekod, vr.projcode, vr.redovisnar, vr.period, ko.ktobeskr, case when ((vr.ktonr like '9600' or vr.ktonr like '3%') AND (vr.krebel>0)) then 'Revenues' else 'Costs' end