Io farei così:

Prendi tutti i dati dal database e li dividi in fasce orarie di un'ora.
Puoi farlo in mysql con qualcosa di questo tipo:
codice:
SELECT a FROM b GROUP BY HOUR(data_consegna)

Oppure in php, scegli tu cosa preferisci, se hai molti dati vale anche la pena controllare quale metodo è più veloce.

Ti crei un array in cui ogni elemento è un intervallo di un'ora (usa per le key dei nomi che poi ti permettano facilmente di fare delle ricerche) e dentro ci metti tutte le consegne per quell'intervallo di tempo (strutturali come vuoi, basta che ci siano i dati).

A questo punto sara molto semplice visualizzare tutte le consegne, quelle per un orario specifico o per una fascia oraria di più ore semplicemente prendendo dall'array gli elementi corrispondenti.