sql >> Databasteknik >  >> RDS >> PostgreSQL

sqlalchemy postgresql där int =sträng

Casta helt enkelt till en sträng:

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

om Car.id är en lokal variabel som är en int.

Om du behöver använda detta i en join, låt databasen casta den till en sträng:

from sqlalchemy.sql.expression import cast

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

Om strängvärdet i den andra kolumnen innehåller siffror och eventuellt blanksteg du kanske måste överväga att trimma, eller istället casta strängvärdet till ett heltal (och lämna heltalskolumnen ett heltal).




  1. MySQL Left Joins:Välj allt från en tabell, men bara matchande värde i den andra tabellen med kriterier

  2. Finns det något sätt att lösa det kända problemet i Spring Boot vid anslutning till en MySQL-databas med mellaneuropeisk tidszon?

  3. Resultat från e-postfrågor som en HTML-tabell i SQL Server (T-SQL)

  4. Åsidosätter tabellnamnet i Flask-Alchemy