2016-02-01 11 views
6

Qual è il modo corretto di eseguire un'istruzione select con un "ORDER BY foo DESC" in SQLAlchemy core? (core, non ORM!)SQLAlchemy Core: ordine da desc

Attualmente sto tra cui la direzione nella order_by direttamente:

mytable.select(order_by='name DESC') 

... funziona (anche se non mi piace perché è un po ' "hackish"), ma SQLAlchemy mi dà il seguente avviso:

SAWarning: impossibile risolvere il riferimento all'etichetta 'nome DESC'; la conversione in di testo() (questo avvertimento può essere soppressa dopo 10 occorrenze)
util.ellipses_string (element.element))

(non ho trovato nulla in the doc)

risposta

7

Dalla SQLAlchemy docs:

from sqlalchemy import desc 

stmt = select([users_table]).order_by(desc(users_table.c.name)) 
+1

ad essere onesti, la documentazione di base sono un po 'più complicato da trovare, come ORM è enormemente più popolare;) –

+0

sì ... il problema è anche che SQLAlchemy è davvero un grande progetto e ci sono anche diversi modi per realizzare la stessa cosa: P – daveoncode

+0

Infatti. Ma una volta superata una certa soglia di conoscenza, è abbastanza facile trovare le cose che stai cercando. Inoltre, se la mia risposta ha risolto il tuo problema, puoi contrassegnarlo accettato;) –