sql >> Database >  >> RDS >> PostgreSQL

sqlalchemy postgresql waarbij int =string

Gewoon casten naar een string:

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

if Car.id is een lokale variabele die een int is.

Als je dit in een join moet gebruiken, laat de database het dan casten naar een string:

from sqlalchemy.sql.expression import cast

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

Als de tekenreekswaarde in de andere kolom cijfers bevat en mogelijk witruimte je moet misschien overwegen om te trimmen, of in plaats daarvan de tekenreekswaarde naar een geheel getal te casten (en de kolom integer een geheel getal te laten).




  1. MySQL-fout:kan een externe sleutelbeperking niet worden toegevoegd?

  2. UTF16 hex naar tekst

  3. Mysql datetime wordt 0000-00-00 00:00:00 in mysql-versie 5.6

  4. hoe Mysql te starten in git bash in Windows 8.1