sqlalchemy.exc.InternalError:(pymysql.err.InternalError)(3065,“ ORDER BY的表达式#1 ...这与DISTINCT不兼容”)

时间:2019-05-02 08:44:44

标签: python mysql sqlalchemy flask-sqlalchemy

我正在使用flask和sqlAlchemy。以下是我的form.py的摘要:

    temp = [('All','All Motions')]
    motions = db.session.query(Motion_Type.code, Motion_Type.description).distinct(Motion_Type.code).filter(Motion_Type.id == Motion.id).order_by(Motion_Type.order.asc()).all()
    for motion_type in motions:
        temp.append((Motion_Type.description,Motion_Type.description))
    return temp

但是,当我运行项目时,错误是:

  

sqlalchemy.exc.InternalError:(pymysql.err.InternalError)(3065,“ ORDER BY子句的表达式#1不在SELECT列表中,引用的列xxx.motion_type.order不在SELECT列表中;这与DISTINCT不兼容”)

我不确定我的问题是否可以追溯到我的models.py,还是因为我的mySQL数据库未正确设置(即,需要主/外键的表或列未正确设置),我不确定

基本上,我需要知道为什么会发生错误,以便我进行纠正。初学者在这里。

0 个答案:

没有答案