This code shows you how to retrieve the month's first day for a date:
/*create a table to store a number, a dummy unique value and a date*/
create table t_ (
i number,
d date
);
/*set the date format to dd.mm.yyyy*/
alter session set nls_date_format = 'dd.mm.yyyy';
/*insert a few dates*/
insert into t_ values (1, to_date('05.03.2000'));
insert into t_ values (2, to_date('19.04.2001'));
insert into t_ values (3, to_date('25.08.2003'));
insert into t_ values (4, to_date('01.07.2002'));
insert into t_ values (5, to_date('18.02.2000'));
insert into t_ values (6, to_date('21.10.2003'));
/*Select the first day of the month for which the date is stored in the database table. This is achieved by using the trunc function*/
select i, trunc(d,'month') from t_;