8

ここで、データベース内のデータを属性 1 で並べ替えます。属性 1 の値が同じである異なるアイテムが結合している場合、データは ID で並べ替えられているように見えます。ただし、desc(id) でソートして同点を打破したいと思います。同点の場合、データベースのデフォルトのソート基準を変更するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

8

順序は、SQLAlchemyではなく、データベースによって完全に決定されます。プレーンSQLでは、ORDER BY句を追加するだけですが、SQLAlchemy ORMでは、order_byメソッドをチェーンすることで同じことを行います。例えば:

for eq in session.query(Equipment).order_by(Equipment.model_id).order_by(Equipment.name).all():
    print (eq)

左端の方がプライマリソートです。

于 2013-01-16T15:17:15.360 に答える