Ich habe eine Auswahl wie die unten in einer gespeicherten Prozedur (verkürzt für die Kürze). @ Param ist ein Parameter für die gespeicherte Prozedur, die NULL sein kann.Will 'Exists' in einer Where-Klausel nur verwendet werden, wenn der übergebene Parameter einen Wert hat
SELECT name FROM Tabelle1 WHERE VORHANDEN (wählen .... von table2 Wo param = @param und ... und ...) und ... und ...
Ich möchte die EXISTS-Anweisung (der fett gedruckte Teil) wird nur verwendet, wenn @param einen Wert hat, andernfalls ignoriert es.
Ich möchte nicht dynamische SQL oder temporäre Tabellen verwenden, wenn möglich. Ich versuche, eine CASE-Anweisung zu verwenden, um mit der EXISTS-Anweisung zu arbeiten, aber mit wenig Glück.
Um sicherzustellen, ... ist das Feld "param" akzeptieren NULLs ? –
Ja .. Ich habe dies bereits in meiner Frage angegeben. –