select count(*)
from (select rownum rnum
from all_objects
where rownum <= to_date('2012-12-26', 'yyyy-mm-dd') -
to_date('2012-12-01','yyyy-mm-dd') + 1)
where to_char(to_date('2012-12-01', 'yyyy-mm-dd') + rnum - 2, 'D') not in
('1', '7')
select to_date('2012-12-26', 'yyyy-mm-dd') -
to_date('2012-12-01','yyyy-mm-dd') + 1 from dual; --求出天数
select to_char(to_date('2012-12-01', 'yyyy-mm-dd'), 'day'),
to_char(to_date('2012-12-02', 'yyyy-mm-dd')-1 , 'D')
from dual; --求出是属于星期几
-- 星期日 代表 1 星期一代表2 星期二代表3