2012-01-14 16 views

risposta

6

Se det_factura è anche un oggetto mappato, allora questa query dovrebbe fare:

qry = (session.query(func.count(det_factura.id)) 
     .filter(det_factura.company==31) 
     .filter(det_factura.date.like('2010-05%')) 
     ) 

Se è un esempio table, quello seguente dovrebbe funzionare:

qry = select([func.count(det_factura.id)], 
     and_(det_factura.company==31, 
      det_factura.date.like('2010-05%') 
      ) 
     ) 
+0

Grazie. SQLSoup con cui lavoro, adattando questo codice a sqlsoup. – leonciokof

+0

hmm .. ma cosa succede se non si dispone di un campo ID? come si ottiene semplicemente "contare (*)", possibilmente in presenza di altre cose nell'elenco di selezione (quindi non si può usare sqlalchemy .count())? – shaunc

+2

@shaunc: puoi sempre fare 'func.count ('*')' per ottenere un'espressione SQL 'COUNT (*)'. – van

Problemi correlati