j'ai une procédure stockée comme suit:Modification d'un SUM retourné NULL à zéro
CREATE PROC [dbo].[Incidents]
(@SiteName varchar(200))
AS
SELECT
(
SELECT SUM(i.Logged)
FROM tbl_Sites s
INNER JOIN tbl_Incidents i
ON s.Location = i.Location
WHERE s.Sites = @SiteName AND i.[month] = DATEADD(mm, DATEDIFF(mm, 0, GetDate()) -1,0)
GROUP BY s.Sites
) AS LoggedIncidents
'tbl_Sites contains a list of reported on sites.
'tbl_Incidents containts a generated list of total incidents by site/date (monthly)
'If a site doesnt have any incidents that month it wont be listed.
Le problème que je vais avoir est qu'un site ne marche pas avoir d'incidents ce mois-ci et en tant que telle i obtenir une valeur NULL retournée pour ce site quand je lance ce sproc, mais j'ai besoin d'avoir un zéro/0 retourné pour être utilisé dans un graphique dans SSRS.
J'ai essayé l'utilisation coalesce et isnull en vain.
SELECT COALESCE(SUM(c.Logged,0))
SELECT SUM(ISNULL(c.Logged,0))
Existe-t-il un moyen d'obtenir ce format correctement?
Cheers,
Lee
Je suis confus parmi beaucoup anwsers que j'ai trouvé pour la question que je faisais face, mais par la suite « COALESCE (SUM (i.Logged) , 0) "fait l'affaire, et d'une manière très élégante et simple. Merci!! – TheCuBeMan