Re: WITH clause

From: David Fetter <david(at)fetter(dot)org>
To: Hannu Krosing <hannu(at)tm(dot)ee>
Cc: PG Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: WITH clause
Date: 2003-12-13 21:17:28
Message-ID: 20031213211728.GB1859@fetter.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, Dec 13, 2003 at 10:58:59PM +0200, Hannu Krosing wrote:
> David Fetter kirjutas R, 12.12.2003 kell 20:13:
> > Kind people,

> > I'm looking to the SQL WITH clause as a way to get better regex
> > support in PostgreSQL. I've been chatting a little bit about
> > this, and here's an idea for a behavior. Implementation details
> > TBD.

> > WITH res = match (x.foo, '([0-9]+)x([0-9]+)')
> > SELECT *
> > FROM x
> > WHERE y = res[2]
> > OR y = res[3];
>
> why not use current standard syntax
>
> SELECT x.*
> FROM x,
> (select match (x.foo, '([0-9]+)x([0-9]+)')
> from x innerx
> where innerx.pk = x.pk
> ) as res
> HAVING y = get_match_group(res, 2)
> OR y = get_match_group(res, 3)
> ;
>
> with functions match(str,regex) which returns a match object and
> get_match_group which extracts matched groups from it.

Hannu, excellent idea! This is just the kind of discussion I was
trying to start :)

Cheers,
D
--
David Fetter david(at)fetter(dot)org http://fetter.org/
phone: +1 510 893 6100 cell: +1 415 235 3778

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Hannu Krosing 2003-12-13 22:27:05 Re: WITH clause
Previous Message Hannu Krosing 2003-12-13 20:58:59 Re: WITH clause