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>
Subject: Re: range type expression syntax
Date: 2015-02-26 20:17:38
Message-ID: op.xuolbodlk4admm@eis158.energi.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

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

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tong Michael 2015-02-26 20:23:20 how to do merge in postgres ("with upsert as" not supported)
Previous Message John Turner 2015-02-26 20:11:28 range type expression syntax