SELECT MyTable.Name,
(
SELECT CASE WHEN ISNULL(SUM(TotalDays), 0) <= 0 THEN 0
ELSE SUM(TotalDays)
END AS Total
FROM Application AS Applications
WHERE (ID = MyTable.id)
) - MIN(Assignments) AS Excesses
FROM MyTable
L'instruction TSQL ci-dessus est une sous-requête dans une requête principale. Lorsque je l'exécute, si TotalDays est NULL ou < = 0, Total est défini sur 0 (zéro).Définir dynamiquement le résultat d'une requête TSQL à l'aide de CASE WHEN
Ce que je voudrais faire ici est de mettre le résultat de toute requête (Dérives) à 0. Je veux (Dérives) qui est le résultat de Total - Min (missions) à régler à 0 si sa valeur est NULL ou < = 0.
Je veux le cas où appliquer à l'ensemble de la requête, mais j'ai du mal à faire les choses correctement.
votre question n'est pas clair (pour moi au moins) peux vous s'il vous plaît donner la structure des tables impliquées et quel est le dat que vous devez obtenir avec vous quesy –
I reformaté en fonction de vos crochets, est-ce exact? – Blorgbeard
Oui le formage édité est très juste – StackTrace