Vous avez besoin d'EXTRAIT :
SELECT
EXTRACT(DOW FROM DATE '2011-02-16') = 0; -- 0 is Sunday
Cela peut se traduire par vrai ou faux, c'est un dimanche ou ce n'est pas le cas. Je n'ai aucune idée de ce que vous entendez par "nombre total" car ce sera toujours 0 (la date n'est pas un dimanche) ou 1 (la donnée donnée est un dimanche).
Édit :quelque chose comme ça ?
SELECT
COUNT(*)
FROM
generate_series(timestamp '2011-01-01', '2011-03-01', '1 day') AS g(mydate)
WHERE
EXTRACT(DOW FROM mydate) = 0;