Bagaimana saya bisa menggunakan ORDER BY descending
dalam permintaan SQLAlchemy seperti berikut?
Kueri ini berfungsi, tetapi mengembalikannya dalam urutan naik:
query = (model.Session.query(model.Entry)
.join(model.ClassificationItem)
.join(model.EnumerationValue)
.filter_by(id=c.row.id)
.order_by(model.Entry.amount) # This row :)
)
Jika saya mencoba:
.order_by(desc(model.Entry.amount))
maka saya mendapatkan: NameError: global name 'desc' is not defined
.
python
sqlalchemy
AP257
sumber
sumber
import
.Penggunaan dari @ jpmc26
sumber
someselect.order_by(desc(table1.mycol))
(Diambil dari dokumen .) ... karena saya sendiri tidak memperhatikannya dalam pertanyaan Anda.Satu hal lain yang mungkin Anda lakukan adalah:
Ini akan menghasilkan: ORDER BY name desc. Kerugian di sini adalah nama kolom eksplisit yang digunakan dalam urutan oleh.
sumber
getattr(MyModelClass, column_string).desc()
jika Anda memiliki string.qry.order_by(getattr(getattr(Song, sort_by), sort_dir)())
Anda dapat menggunakan
.desc()
fungsi dalam permintaan Anda seperti iniIni akan memesan dengan jumlah dalam urutan menurun atau
Penggunaan fungsi desc dari SQLAlchemy
Untuk dokumen resmi, silakan gunakan tautan atau periksa snippet di bawah ini
sumber
Anda dapat mencoba:
.order_by(ClientTotal.id.desc())
sumber
Pelengkap di @Radu jawaban, Seperti dalam SQL, Anda dapat menambahkan nama tabel dalam parameter jika Anda memiliki banyak tabel dengan atribut yang sama.
sumber