Re: range type expression syntax

From: John Turner <jjturner(at)energi(dot)com>
To: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>, "Marc Mamin" <M(dot)Mamin(at)intershop(dot)de>
Subject: Re: range type expression syntax
Date: 2015-02-27 14:29:59
Message-ID: op.xupzv9e6k4admm@eis158.energi.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Fri, 27 Feb 2015 02:57:15 -0500, Marc Mamin <M(dot)Mamin(at)intershop(dot)de>
wrote:

>> postgres=# select concat('[', now()::date, ',', now()::date,
>> ']')::daterange testrange;
>
> There are range specific functions for this:
> select daterange(now()::date, now()::date, '[]')
>
> regards,
> Marc Mamin
>

Marc, thanks - indeed it's right there in 8.17.6! As you might suspect,
I'm rushing through things more than I'd care to, so I'm grateful for this
list and the dose of sanity it provides :)

Cheers,
John

_______________________________________
> Von: pgsql-general-owner(at)postgresql(dot)org
> [pgsql-general-owner(at)postgresql(dot)org]&quot; im Auftrag von &quot;John
> Turner [jjturner(at)energi(dot)com]
> Gesendet: Donnerstag, 26. Februar 2015 21:17
> An: pgsql-general(at)postgresql(dot)org
> Betreff: Re: [GENERAL] range type expression syntax
>
> On Thu, 26 Feb 2015 15:11:28 -0500, John Turner <jjturner(at)energi(dot)com>
> wrote:
>
>> Seems I'm missing a trick trying to get rangetypes working:
>>
>> No problem building the string:
>> select concat('''[', now()::date, ',', now()::date, ']''') testrange;
>> testrange
>> ---------------------------
>> '[2015-02-26,2015-02-26]'
>> (1 row)
>>
>> Bombed-out trying to turn this into a daterange:
>> postgres=# select concat('''[', now()::date, ',', now()::date,
>> ']''')::daterange testrange;
>> ERROR: malformed range literal: "'[2015-02-26,2015-02-26]'"
>> DETAIL: Missing left parenthesis or bracket.
>>
>> Is there a specific casting I need to apply in order to render a literal
>> daterange from parameterized range elements?
>>
>> /john
>>
>>
> Sorry - too quick to post, I realize there was no need to wrap the
> expression in extra quotes:
>
> postgres=# select concat('[', now()::date, ',', now()::date,
> ']')::daterange testrange;
> testrange
> -------------------------
> [2015-02-26,2015-02-27)
> (1 row)

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Clodoaldo Neto 2015-02-27 14:36:28 Pass a URI as a pgAdmin parameter
Previous Message gmb 2015-02-27 14:07:27 Performance on DISABLE TRIGGER