11
votes

Groupe à l'heure à Sqlalchemy?

Comment puis-je trouver des résultats de requête par la partie heure d'une colonne DateTime dans SQLALCHEMY?


0 commentaires

5 Réponses :


17
votes

Ceci fonctionne pour PostgreSQL:

.group_by(func.date_trunc('hour', date_col))


1 commentaires

Je n'ai pas mentionné que j'utilise SQLite; date_trunc est postgres?



16
votes

Si je me souviens bien, vous devez d'abord extraire l'heure de votre horodatage, puis vous pouvez regrouper par cela.

query(extract('hour', timeStamp).label('h')).group_by('h')


1 commentaires

Oups ... Ouais tu devras faire ça. J'ai mis à jour mon exemple. Merci d'avoir attrapé ça.



0
votes

Vous pouvez également le faire en python. En supposant que vous ayez un Query_Result : xxx

Cette réponse est adaptée d'une réponse à une question similaire Voici


0 commentaires

4
votes

Récemment, je devais faire une chose similaire à l'aide de SQLalchemy et MySQL et a fini par utiliser datation_format ( http : //www.w3schools.com/sql/funchools.com/sql/func_date_format.asp ) Pour grouper à l'heure, minute, deuxième xxx

à seulement groupe par heure, ce serait ' % H ' au lieu de '% h:% I:% s '


0 commentaires

0
votes

en oracle, utilisez func.trunc (myTable.dt, 'hh')

C'est un peu finky, cependant. Cela échoue: xxx

mais cela réussit: xxx

Merci à Ce fil pour la pointe.


0 commentaires