From: | "Marc G(dot) Fournier" <scrappy(at)hub(dot)org> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Thomas Lockhart <lockhart(at)fourpalms(dot)org>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | SIMILAR TO syntax (Was: Re: The TODO List (Was: Re: O...) |
Date: | 2002-09-19 16:30:09 |
Message-ID: | 20020919132206.S53125-100000@hub.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, 19 Sep 2002, Tom Lane wrote:
> "Marc G. Fournier" <scrappy(at)hub(dot)org> writes:
> > Who implemented SIMILAR TO in the first place?
>
> Thomas. He put in the syntax, but as it stands it's simply syntactic
> sugar for ~ --- that is, our Posix-compatible regex match operator.
> Since the spec demands very non-Posix behavior, this is wrong.
>
> AFAICS, getting SIMILAR TO to operate per spec would require adding some
> sort of translation function that converts the spec-style pattern into
> a Posix pattern that our regex match engine would handle. This would at
> least require adding ^ and $ around the pattern, converting the escape
> character if any, and translating % and _ into .* and . respectively.
> There are probably some differences of detail that we'd need to fix
> later, but that would get it to a state where we need not be ashamed
> to release it.
>
> We already have a similar mechanism for handling LIKE ... ESCAPE
> clauses, so it doesn't seem too difficult to do. But I haven't got
> time for it...
'K, just curious here, but ... Thomas, do you agree with Tom's
interpretation of the spec? If so, would it be possible to get the above
fixed?
Or is there an ambiguity there (not like *that* has never happened before)
that Tom/Peter are being more strict about then the spec requires?
From | Date | Subject | |
---|---|---|---|
Next Message | Marc G. Fournier | 2002-09-19 16:37:09 | Re: [HACKERS] PGXLOG variable worthwhile? |
Previous Message | Tom Lane | 2002-09-19 16:22:25 | Re: Proposal for resolving casting issues |