Questo ti farà guadagnare tutti i giorni mancanti per un anno (SQL Fiddle ).
all_dates
genera un elenco di tutte le date del 2012 (modificare come richiesto) e il LEFT JOIN
verificando IS NULL
elimina quelle date che esistono nella tua tabella di origine.
WITH all_dates AS (
SELECT TO_DATE('01-jan-2012') + ROWNUM - 1 AS d
FROM dual
CONNECT BY ROWNUM <= ADD_MONTHS(TO_DATE('01-jan-2012'), 12 ) - TO_DATE('01-jan-2012')
)
SELECT all_dates.d
FROM all_dates
LEFT JOIN t ON ( t.d = all_dates.d )
WHERE t.d IS NULL
ORDER BY all_dates.d
;
Assicurati di utilizzare una variabile di collegamento invece di codificare la data tre volte.