Bạn có thể sử dụng biểu thức date_trunc('month', current_date)
. Được thể hiện bằng câu lệnh SELECT. . .
select date_trunc('month', current_date)
2013-08-01 00:00:00-04
Để loại bỏ thời gian, hãy truyền đến ngày.
select cast(date_trunc('month', current_date) as date)
2013-08-01
Nếu bạn chắc chắn rằng cột đó nên luôn luôn chỉ lưu trữ vào ngày đầu tiên của tháng, bạn cũng nên sử dụng ràng buộc KIỂM TRA.
create table foo (
first_of_month date not null
check (extract (day from first_of_month) = 1)
);
insert into foo (first_of_month) values ('2015-01-01'); --Succeeds
insert into foo (first_of_month) values ('2015-01-02'); --Fails
ERROR: new row for relation "foo" violates check constraint "foo_first_of_month_check" DETAIL: Failing row contains (2015-01-02).