PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

sqlalchemy postgresql wobei int =string

Einfach in einen String umwandeln:

db.session.query(Vehicle).filter(str(Car.id) == Vehicle.value)

wenn Car.id ist eine lokale Variable, die ein int.

ist

Wenn Sie dies in einem Join verwenden müssen, lassen Sie es von der Datenbank in einen String umwandeln:

from sqlalchemy.sql.expression import cast

db.session.query(Vehicle).filter(cast(Car.id, sqlalchemy.String) == Vehicle.value)

Wenn der Zeichenfolgenwert in der anderen Spalte Ziffern und möglicherweise Leerzeichen enthält Möglicherweise müssen Sie das Trimmen in Betracht ziehen oder stattdessen den Zeichenfolgenwert in eine Ganzzahl umwandeln (und die Ganzzahlspalte eine Ganzzahl belassen).