SELECT 1 = 1 funktioniert nicht

7

Meine Frage ist etwas generischer, aber sagen wir mal, ich möchte einen Ausdruck in SQL Server testen. Ich schreibe SELECT 1=1 oder SELECT 'a' > 'B' und drücke F5, in der Hoffnung, das Ergebnis zu sehen, wie ich es tue, wenn ich SELECT 0, 1 eintippe.
Aber ich bekomme stattdessen einen Fehler. Warum das? Was sollte ich verwenden, um diese Ausdrücke im laufenden Betrieb zu bewerten?

    
Patrick Honorez 13.01.2011, 15:31
quelle

5 Antworten

17

SQL Server hat keinen booleschen Datentyp.

Sie müssten SELECT CASE WHEN 1=1 THEN 1 ELSE 0 END

verwenden     
Martin Smith 13.01.2011, 15:32
quelle
13

Der einfachste Weg ist select 1 where <test expression here>

    
dotjoe 13.01.2011 15:36
quelle
1

Sie könnten eine case-Anweisung verwenden:

%Vor%

oder ein IF ... ELSE

%Vor%     
Joe Stefanelli 13.01.2011 15:34
quelle
1

Du könntest deinen Ausdruck nach where wie folgt setzen

%Vor%

von Ihnen könnte es in eine IF-Anweisung einfügen

%Vor%     
Jonas Elfström 13.01.2011 15:36
quelle
0

Sie können die Ausgabe des Vergleichs mit pseudo-boolean umwandeln:

%Vor%

oder, um eine int als Rückgabe zu erhalten:

%Vor%     
Nick Tsikas 23.06.2016 10:49
quelle

Tags und Links