Re: [HACKERS] SQL92

From: Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us>
To: djackson(at)cpsgroup(dot)com (Jackson, DeJuan)
Cc: lockhart(at)alumni(dot)caltech(dot)edu, pgsql-hackers(at)hub(dot)org
Subject: Re: [HACKERS] SQL92
Date: 1998-10-02 01:48:59
Message-ID: 199810020148.VAA22777@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> > > Does the SQL92 standard have to be purchased from the ANSI Board?
> >
> > afaik, yes.
> >
> > > Well, my actual question has to do with LIKE. Could anyone who has
> > a
> > > copy of a standard send me the PATTERN syntax/meanings for LIKE in
> > > SQL92?
> >
> > Well, you may be hoping for more than is in any of your reference
> > books,
> > but there isn't any more to tell :)
> >
> > % ==> match any (sub)string
> > _ ==> match any single character
> > everything else matches itself
> >
> > In SQL92 (but not yet in Postgres; can't remember if there is a
> > workaround):
> >
> > LIKE 'pattern' ESCAPE 'char'
> >
> > allows a single character "char" if it precedes the two pattern
> > matching
> > characters to demote the "%" or "_" to act like a normal single
> > character. The Postgres regex stuff is much more powerful.
> >
> > Sorry, I think that's it :(
> >
> > - Tom
> Well, In all of the major Databases that I have worked with there is
> also the "[character_set]" matching operator.
> So a pattern of '[A-D]%' would match all word beginning with "A", "B",
> "C", or "D", and "[^character_set]" matches everything but the set.
> Looking at the current PgSQL like code this is ignored as well as the
> ESCAPE syntax. I'm trying to resolve the problem we have of LIKE not
> matching the pattern "%%" to anything even "%".
> But, looking at the code I see that "%%" or "%%%%%%%%" should be equal
> to "%" so it's not the LIKE matching code that's causing the problem
> (also, read I'm looking in the wrong spot).
>
> Does anybody know if the "[character_set]" stuff is part of the
> standard?
> Can anyone point me to another place where the pattern could/would get
> munged?
> Also, wouldn't doing a memmove from the DATA portion of a varlena struct
> cause it problems if it was accessed again?
> Thanks again,

Added to TODO list:

* have LIKE support character classes, 'pg_[a-c]%'

I did not realize we didn't have that.

--
Bruce Momjian | http://www.op.net/~candle
maillist(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 1998-10-02 01:58:09 Re: [HACKERS] SQL92
Previous Message Tom Lane 1998-10-02 01:47:13 Re: [HACKERS] It sorta works, but I'm confused about locking