Ich habe diesen Ausschnitt in Python mit psycopg2:
spam = None
command = sql.SQL("= {}").format(sql.Literal(spam))
Wenn Sie den Befehl ändern, erhalten Sie "= NULL", was in der SQL-Abfrage keine Ergebnisse liefert, da für die Abfrage "IS NULL" erforderlich ist.
(Wenn Spam nicht None ist, sondern zum Beispiel "eggs", funktioniert "=" eggs "" für die Abfrage.)
Gibt es eine Möglichkeit, im mogrified-Befehl automatisch zwischen "IS" und "=" zu wechseln, abhängig davon, ob das folgende Argument "None" ist oder nicht?
Vielen Dank!
Antworten:
1 für die Antwort № 1Nein, aber Sie können verwenden is distinct from
Anstatt von =
Nullen in den Vergleich aufzunehmen.
https://www.postgresql.org/docs/current/static/functions-comparison.html