2010-05-31 5 views
0

J'ai beaucoup d'enregistrements dans ma base de données qui contient le champ datetime (par exemple 2010-05-23 17:45:57).
Je veux compter tous les enregistrements entre par ex. 15h00 et 15h59 (tout peut passer d'un autre jour, mois ou année). Comment puis-je faire ceci?Django - date de comptage entre

+1

http://stackoverflow.com/questions/917996/how-do-i-filter-by-time- dans-un-temps-champ-temps –

Répondre

0

Vous pouvez convertir les champs datetime dans Julian Dates puis faire une comparaison directe:

# Input is a list with the time of all the records, t_record_all 

# Loop over all the records 
counter = 0 
jd_low = ... #(this is your lower time limit in JD) 
jd_hi = ... # (this is your higher time limit in JD) 

for t_record in t_record_all: 
    # Convert the time to julian date format 
    jd_record = ... #(do your conversion here) 
    if (jd_low <= jd_record <= jd_hi): 
     # increment record counter 
     counter = counter + 1 
print counter