Jeg er ikke sikker på din datatype. Men se følgende eksempler på returnerede værdier. I MSSQL 2012 ser din situation ud til at svare til datatypen REAL. Mens PENGE, FLOAT, DECIMAL, DOBBELT PRÆCISION retur 72200,00 RIGTIG returnerer 72199.9998321533. Se nedenfor:
CREATE TABLE #tempso (Amount money, GRPS int);
INSERT INTO #tempso(Amount, GRPS) VALUES
('65025.00',355),
('-2500.00',355),
('7014.40',355),
('725.62',355),
('241.67',355),
('1209.57',355),
('241.87',355),
('241.87',355)
SELECT GRPS,SUM(Amount) AS AMT FROM #tempso GROUP BY GRPS
ALTER TABLE #tempso ALTER COLUMN Amount float
SELECT GRPS,SUM(Amount) AS AMT FROM #tempso GROUP BY GRPS
ALTER TABLE #tempso ALTER COLUMN Amount decimal(10,2)
SELECT GRPS,SUM(Amount) AS AMT FROM #tempso GROUP BY GRPS
ALTER TABLE #tempso ALTER COLUMN Amount DOUBLE PRECISION
SELECT GRPS,SUM(Amount) AS AMT FROM #tempso GROUP BY GRPS
---------------
RETURNS:|355 72200.00 |
---------------
ALTER TABLE #tempso ALTER COLUMN Amount REAL
SELECT GRPS,SUM(Amount) AS AMT FROM #tempso GROUP BY GRPS
----------------------
RETURNS:|355 72199.9998321533 |
----------------------
DROP TABLE #tempso
Du ønsker måske at ændre kolonnens datatype (hvis det ikke er en ønsket type, er den måske indstillet ved en fejl fra rullemenuen i SQL Studio osv.) eller CAST værdien som en af ovenstående datatyper, hvilket vil returnere den ønskede 72200,00