sql >> Database teknologi >  >> RDS >> Mysql

returnere gennemsnit af optællinger af poster efter en gruppe for erklæring

Her er svaret .

I dit tilfælde skal du bruge den angivne tabeldefinition:

from sqlalchemy import cast, func
from sqlalchemy.types import TIME, DATE
from sqlalchemy.sql import between

time_from = ...  # get filter time maybe using datetime.time()
time_to = ...  # idem
counts = session.query(func.count('*').label('count')).\
    filter(between(cast(MyClass.created, TIME),
           time_from,
           time_to)).\
    group_by(cast(MyClass.created, DATE))

avg = session.query(func.avg(counts.subquery().columns.count)).scalar()

print avg


  1. Sortering efter en eller anden kolonne og også efter rand() i MySQL

  2. Send array til MySQL-lagret rutine

  3. MySQL CSV-import:datetime-værdi

  4. Enhver kommando i mysql, der svarer til Oracles autotrace til ydelsesdrejning