Det enklaste sättet att hitta saknade datum är att använda en kalendertabell. Jag har postat kod för att skapa och fylla i en kalendertabell för PostgreSQL ; du bör kunna anpassa den utan problem.
Med kalendertabellen på plats är din fråga ganska enkel och lätt att förstå. För att hitta de saknade datumen för oktober 2011, skulle du använda något i den här stilen. (Gissa på din "inlägg"-tabell.)
select c.cal_date
from calendar c
left join posts p on (c.cal_date = p.date)
where p.date is null
and c.cal_date between '2011-10-01' and '2011-10-31'
and p.userid = 1
order by c.cal_date