ho un db con 3 colonne:
id, data, quantity

stavo cercando di fare un join per farmi mostrare i risultati di tutti gli id divisi per data... non sapendo come fare mi sono autovincolato e ho messo 2 date io a mano e ho creato questo:

SELECT a.*, b.quantity old
FROM `db` a
LEFT JOIN `db` b
ON a.id = b.id
WHERE a.data = '2011-05-09' AND b.data = '2011-05-08'

il problema di questo join e' che (oltre a non farmi vedere tutte le possibili combinazioni con le altre date) se il mio db e' fatto cosi'

1 2011-05-09 1
2 2011-05-09 3
3 2011-05-09 0
1 2011-05-08 2
2 2011-05-08 1
3 2011-05-08 1

non ci sono problemi
ma se cancello anche una sola entry dal giorno vecchio (oppure inserisco un nuovo id e quindi ci saranno solo i dati di oggi e non quelli vecchi) al posto di mostrarmi

il campo old con NULL non mi da proprio l'entry (ed ovviamente e' giusto che sia cosi' da quel where :P)

come posso fare per risolvere con questa query?