Wie Sie alle negativen Zahlen in einer T-SQL-Anweisung für eine Gruppe auf null setzen

8

Ich habe eine T-SQL-Abfrage, bei der alle negativen Mengen auf Null gesetzt werden sollen.

%Vor%

Grundsätzlich, wenn die Summe aus 5, 5, -1 besteht, sollte das Ergebnis 5 + 5 + 0 = 10 sein, und nicht (5 + 5 + (- 1) = 9.

Wie würde ich das tun?

    
John 06.09.2011, 12:47
quelle

3 Antworten

16

Sie könnten eine CASE -Anweisung

verwenden %Vor%

Oder eine obskurere Version

%Vor%

oder schließen Sie diese Zeilen einfach in der WHERE -Klausel aus, wenn sie für keinen anderen Zweck benötigt werden.

    
Martin Smith 06.09.2011, 12:48
quelle
5

filtern Sie einfach diejenigen heraus, die Sie nicht wollen ...

%Vor%     
Randy 06.09.2011 12:50
quelle
1

SUM(CASE WHEN i.Quantity < 0 THEN 0 ELSE i.Quantity END) as quantity

    
CyberDude 06.09.2011 12:49
quelle

Tags und Links