Post by IcebergPost by AlessandroDAd ogni modo 5 e 3 sono due interi, quindi il risultato è un intero,
cioè 1, che è giusto.
Se ho
ID - Valutazione
1 - 3
2 - 1
3 - 2
La media a casa mia sarebbe 1,6 e non 1
La media di cosa?!
Se applichi la funzione di aggregazione AVG alla colonna Valutazione avrai
con quei dati una media pari a 2 (3+1+2/3).
USE tempdb;
GO
CREATE TABLE dbo.Valori(
ID int NOT NULL PRIMARY KEY,
Valutazione int NOT NULL
);
GO
INSERT dbo.Valori VALUES(1, 3);
INSERT dbo.Valori VALUES(2, 1);
INSERT dbo.Valori VALUES(3, 2);
GO
SELECT AVG(Valutazione) AS Media
FROM dbo.Valori;
GO
/* Output:
Media
-----------
2
(1 row(s) affected)
*/
DROP TABLE dbo.Valori;
Alessandro ti faceva semplicemente notare che se dividi due numeri interi,
avrai un valore intero, quindi 5/3 restituisce 1 come risultato (il 3 sta 1
volta nel 5 ed il resto "si perde" dato che il risultato è intero). Io però
non ho ancora capito che vuoi fare, quindi ti invito a postare i dati che ti
ho richiesto nell'altro post.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo
http://italy.mvps.org