SQL查询到SQLAlchemy(flasksqlalchemy)及其子查询

2024-09-29 17:14:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个SQL查询要转换成SLQAlchemy(flask sqlalchemy) 查询使用分页

SQL查询

queryPostgres = db.text("""
    SELECT *, COUNT(*) OVER () as RowCount
    FROM (
        SELECT * ,
            ( 3958.75 *
            acos(sin(:lat1 / 57.2958) * sin( cast(latitude as double precision) / 57.2958) +
                 cos(:lat1 / 57.2958) * cos( cast(latitude as double precision) / 57.2958) *
                 cos( cast(longitude as double precision) / 57.2958 - :lon1/57.2958)))
            as distanceInMiles
        FROM "job" ) zc
    WHERE zc.distanceInMiles < :dst
    ORDER BY zc.distanceInMiles
    LIMIT :per_page
    OFFSET :offset
""") 

作为SQLALchemy

^{pr2}$

但是我在sql炼金术中遇到了一个错误

这是澄清的方式

class Job(db.Model):

    __tablename__ = "job"

    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(80), nullable=False)
    city = db.Column(db.String(250), nullable=False)
    state = db.Column(db.String(10), nullable=False)
    zipCode = db.Column(db.String(10), nullable=False)
    latitude = db.Column(db.String(10), nullable=False)
    longitude = db.Column(db.String(10), nullable=False)
    description = db.Column(db.String(200), nullable=False)
    narrative = db.Column(db.String(250), nullable=False)
    companyLogo = db.Column(db.String(250), nullable=False)
    companyName = db.Column(db.String(250), nullable=False)
    companyURL = db.Column(db.String(100), nullable=False)
    time_created = db.Column(db.DateTime, nullable=False)

但我没能成功。 有人能帮忙把这个sql查询转换成SQLAlchemy吗?在


Tags: falsedbsqlstringaszccolumncos

热门问题