T-SQL IF-Anweisung, die in eine sum () -Funktion eingebettet ist

8

Ich versuche, eine MySQL-Abfrage in eine T-SQL-Abfrage zu konvertieren und die IF-Anweisung, die in einer SUM-Anweisung enthalten ist, stolpert mich. Irgendwelche Vorschläge?

%Vor%

Aber ich bekomme einen Fehler:

  

Msg 156, Level 15, State 1, Line 5
  Falsche Syntax in der Nähe des Schlüsselwortes 'if'.
  Msg 102, Level 15, State 1, Line 5
  Falsche Syntax in der Nähe von ')'.

    
user937036 13.05.2013, 18:41
quelle

1 Antwort

16

T-SQL hat keine "inline" IF Anweisung - verwenden Sie stattdessen CASE :

%Vor%

Also, wenn der Wert von CMTS_RQ.US_Pwr >= 37 AND <= 49 ist, dann füge 1 zu SUM hinzu - sonst 0. Gibt dir das, wonach du suchst?

In SQL Server 2012 und neuer können Sie das neue % co_de verwenden % Funktion :

%Vor%     
marc_s 13.05.2013, 18:43
quelle

Tags und Links