¿Cómo puedo usar ORDER BY descending
en una consulta SQLAlchemy como la siguiente?
Esta consulta funciona, pero los devuelve en orden ascendente:
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 :)
)
Si lo intento:
.order_by(desc(model.Entry.amount))
Entonces consigo: NameError: global name 'desc' is not defined
.
python
sqlalchemy
AP257
fuente
fuente
import
.Uso de @ jpmc26
fuente
someselect.order_by(desc(table1.mycol))
(Tomado de los documentos ) ... porque por mi parte no lo noté en su pregunta.Otra cosa que puedes hacer es:
Esto dará como resultado: ORDER BY name desc. La desventaja aquí es el nombre explícito de la columna utilizado en orden por.
fuente
getattr(MyModelClass, column_string).desc()
si tiene una cadena.qry.order_by(getattr(getattr(Song, sort_by), sort_dir)())
Puede usar la
.desc()
función en su consulta así como asíEsto ordenará por cantidad en orden descendente o
Uso de la función desc de SQLAlchemy
Para documentos oficiales, utilice el enlace o consulte el fragmento a continuación
fuente
Puedes probar:
.order_by(ClientTotal.id.desc())
fuente
Complementario en @Radu answer, Al igual que en SQL, puede agregar el nombre de la tabla en el parámetro si tiene muchas tablas con el mismo atributo.
fuente