Trong PostgreSQL, justify_days()
chức năng cho phép bạn điều chỉnh một khoảng thời gian giá trị, để khoảng thời gian 30 ngày được biểu thị dưới dạng tháng.
Ví dụ:nếu bạn có khoảng thời gian nói là 30 ngày , justify_days()
sẽ trả lại nó là 1 mon .
Cú pháp
Hàm có cú pháp sau:
justify_days(interval)
Nơi interval
là khoảng thời gian mà bạn muốn được tính bằng tháng.
Ví dụ
Đây là một ví dụ cơ bản để chứng minh.
SELECT justify_days(interval '30 days');
Kết quả:
1 mon
Các tháng một phần
Dưới đây là một ví dụ về những gì sẽ xảy ra khi khoảng thời gian của bạn không phải là bội số chính xác của 30 ngày.
\x
SELECT
justify_days(interval '31 days'),
justify_days(interval '45 days'),
justify_days(interval '290 days');
Kết quả (sử dụng đầu ra dọc):
justify_days | 1 mon 1 day justify_days | 1 mon 15 days justify_days | 9 mons 20 days
Trong ví dụ này, tôi đã sử dụng \x
để chuyển sang màn hình mở rộng, hiển thị kết quả bằng cách sử dụng đầu ra dọc. Điều này giúp việc đọc kết quả dễ dàng hơn một chút.
Dưới một tháng
Nếu khoảng thời gian này ít hơn 30 ngày, thì khoảng thời gian đó sẽ vẫn còn trong ngày.
SELECT justify_days(interval '29 days');
Kết quả (sử dụng đầu ra dọc):
29 days
Bao gồm các Biên bản
Trong ví dụ này, khoảng thời gian bao gồm một phần phút.
SELECT justify_days(interval '40 days 30 minutes');
Kết quả (sử dụng đầu ra dọc):
1 mon 10 days 00:30:00
Vì vậy, trong trường hợp này, chúng tôi kết thúc với một giá trị thời gian được thêm vào kết quả.