Porque la regla de utilización dice que el GROUP BY debe llevar (en SQL Server)
todos los campos no afectados por funciones agrupadas, es decir que debe incluir también el precio en cuestión:
Código SQL:
Ver originalSELECT
M.nom_material,
M.precio_material Precio
SUM(M.cantidad) Cant_Unidades
FROM
materiales M INNER JOIN obras_materiales O ON M.id_material = O.id_materia
WHERE
O.id_obra = valorBuscado
GROUP BY M.nom_material, M.precio_material ;
Eso sale en el manual de referencia...