From: | Charles Clavadetscher <clavadetscher(at)swisspug(dot)org> |
---|---|
To: | Rich Shepard <rshepard(at)appl-ecosys(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Variable constants ? |
Date: | 2019-08-16 13:25:30 |
Message-ID: | e7f1b5170944e78c11564860a5973186@swisspug.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 2019-08-16 14:50, Rich Shepard wrote:
> On Fri, 16 Aug 2019, Charles Clavadetscher wrote:
>
>> Another way to keep a history is using a daterange instead of two
>> columns for start and end date. Something like
>>
>> create table labor_rate_mult (
>> rate real primary_key,
>> validity daterange not null
>> )
>
> Charles,
>
> Just out of curiosity, what is the range for a rate that is still
> current?
> Does it change every day?
>
> Regards,
>
> Rich
Hi Rich
That would be a range with an empty upper bound. Let's say that the rate
is valid since 2019-08-14 then the range would look like
[2019-08-14,)
A query to find the current rate would look like:
SELECT rate
FROM labor_rate_mult
WHERE validity @> CURRENT_DATE;
Here you can find documentation on the range types (cool stuff I
believe):
https://www.postgresql.org/docs/11/rangetypes.html
Regards
Charles
--
Charles Clavadetscher
Swiss PostgreSQL Users Group
Treasurer
Neugasse 84
CH – 8005 Zürich
+---------------------------+
| ____ ______ ___ |
| / )/ \/ \ |
| ( / __ _\ ) |
| \ (/ o) ( o) ) |
| \_ (_ ) \ ) _/ |
| \ /\_/ \)/ |
| \/ <//| |\\> |
| _| | |
| \|_/ |
| |
| Swiss PostgreSQL |
| Users Group |
| |
+---------------------------+
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2019-08-16 13:44:48 | Re: Bad Estimate for complex query with JOINS on subselects and OR in where conditions |
Previous Message | Rich Shepard | 2019-08-16 12:50:08 | Re: Variable constants ? |