[Db] subquery e date

Marcello Vezzelli marcello a vezz.it
Mer 30 Maggio 2007 09:51:00 CEST


Ciao a tutti,
ho una tabella con questa struttura:

id // contatore
data // datetime attivazione
data_chiuso // datetime chiusura
stato // intero, 0=aperto, 1=assegnato, 2=chiuso

Vorrei fare una query che mi ritorna per ogni giorno quanti ticket sono 
stati assegnati e quanti chiusi, ovvero una cosa del tipo

data 	assegnati 	chiusi
2007-05-16 	5 	/0/
2007-05-21 	1 	/0/
2007-05-22 	1 	/0/
2007-05-23 	1 	/0/
2007-05-25 	8 	3
2007-05-26 	4 	9
2007-05-27 	3 	1
2007-05-28 	5 	3
2007-05-29 	15 	5
2007-05-30 	2 	/0/



Ho risolto in questo modo:

SELECT DATE(c1.data),q1 as assegnati,q2 as chiusi from

    ((SELECT stato,data,COUNT(id) as q1 FROM codici
        WHERE stato=1
        GROUP BY DATE(data)) as c1)

LEFT JOIN

    ((SELECT stato,data,count(id) AS q2 FROM codici
        WHERE stato=2
        GROUP BY DATE(data)) as c2)

ON DATE(c1.data)=DATE(c2.data)
GROUP BY DATE(c1.data)

Funziona bene, ma c'č un modo migliore per farlo?

Ciao
Marcello


-------------- parte successiva --------------
Un allegato HTML č stato rimosso...
URL: http://lists.ziobudda.net/pipermail/db/attachments/20070530/3ab8f00c/attachment-0001.htm


Maggiori informazioni sulla lista Db