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

Zurückgeben von geordneten Suchergebnissen unter Verwendung des Gin-Index mit sqlalchemy

Sie können SQL-Funktionen in Ihren Abfragen verwenden, indem Sie SQLAlchemy Funktion

from sqlalchemy.sql.expression import func

(db.session.query(User, func.ts_rank('{0.1,0.1,0.1,0.1}', User.textsearchable_index_col, func.to_tsquery('smit:* | ji:*')).label('rank'))
    .filter(User.authentication_method != 2)
    .filter(User.textsearchable_index_col.op('@@')(func.to_tsquery('smit:* | ji:*')))
    .order_by('rank desc')
).all()