Mysql
 sql >> Base de données >  >> RDS >> Mysql

Interroger une base de données MySQL et regrouper par plage de dates pour créer un graphique

Je ne suis pas sûr de savoir exactement ce que tu veux. Mais . . .

En supposant une définition de table comme :

create table ticket_data (ticket_num int,
                          status_changed_date datetime,
                          from_state int,
                          to_state int);

Ce qui suit, par exemple, vous donnerait le nombre de valeurs par jour :

select date(status_changed_date) as status_date, count(*)
from ticket_data
group by status_date;

Maintenant, si vous voulez juste from_state = 2 , ajoutez simplement une clause where à cet effet. Si vous ne voulez que ceux du 2 janvier, ajoutez where date(status_changed_date) = '2011-01-02'

Ou, si vous recherchez le nombre distinct de billets par jour, modifiez count(*) à count(distinct ticket_num)

C'est ça que tu demandes ? SQL Fiddle ici