Om het postgresql-arrayveld te gebruiken, moet u unnest()
. gebruiken functie.Maar u kunt het resultaat van unnest()
niet gebruiken in where
clausule.
In plaats daarvan kunt u array_to_string
. gebruiken functie. Zoeken op string van other_names
geeft hetzelfde effect
from sqlalchemy import func as F
last_like = "%qq%"
matches = session.query(MyTable).filter(or_(
MyTable.name.ilike(last_like),
F.array_to_string(MyTable.other_names, ',').ilike(last_like),
)).all()