Thread: DIFFERENCE BETWEEN LIKE AND SIMILAR OPERATORS

DIFFERENCE BETWEEN LIKE AND SIMILAR OPERATORS

From
JORGE MALDONADO
Date:
I've been reading PostgreSQL documentation and I do not really understand the difference between LIKE and SIMILAR operators. Can someone explain?
 
With respect,
Jorge Maldonado

Re: DIFFERENCE BETWEEN LIKE AND SIMILAR OPERATORS

From
Bruce Momjian
Date:
JORGE MALDONADO wrote:
> I've been reading PostgreSQL documentation and I do not really understand
> the difference between LIKE and SIMILAR operators. Can someone explain?

SIMILAR is a super-set of LIKE syntax.  Our docs have:

    http://developer.postgresql.org/pgdocs/postgres/functions-matching.html#FUNCTIONS-SIMILARTO-REGEXP

    It is similar to LIKE, except that it interprets the pattern using the
    SQL standard's definition of a regular expression. SQL regular
    expressions are a curious cross between LIKE notation and common regular
    expression notation.

For the super-set, see the bullets below this line:

     In addition to these facilities borrowed from LIKE, SIMILAR TO
    supports these pattern-matching metacharacters borrowed from POSIX
    regular expressions:

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  PG East:  http://www.enterprisedb.com/community/nav-pg-east-2010.do

Re: DIFFERENCE BETWEEN LIKE AND SIMILAR OPERATORS

From
John Gage
Date:
"Standard" regular expressions are extremely well supported in
Postgres and are one of the main reasons I use Postgres.  I strongly,
very strongly, recommend plunging into regular expressions as deeply
as you can.  Once you start using them "regularly" you will be unable
to live without them.  They are built into the Vim editor which is
also a must have.  Like regular expressions, once you have used Vim
for awhile, you absolutely can't go back.

John

On Mar 16, 2010, at 2:31 AM, Bruce Momjian wrote:

> JORGE MALDONADO wrote:
>> I've been reading PostgreSQL documentation and I do not really
>> understand
>> the difference between LIKE and SIMILAR operators. Can someone
>> explain?
>
> SIMILAR is a super-set of LIKE syntax.  Our docs have:
>
>     http://developer.postgresql.org/pgdocs/postgres/functions-matching.html#FUNCTIONS-SIMILARTO-REGEXP
>
>     It is similar to LIKE, except that it interprets the pattern using
> the
>     SQL standard's definition of a regular expression. SQL regular
>     expressions are a curious cross between LIKE notation and common
> regular
>     expression notation.
>
> For the super-set, see the bullets below this line:
>
>      In addition to these facilities borrowed from LIKE, SIMILAR TO
>     supports these pattern-matching metacharacters borrowed from POSIX
>     regular expressions:
>
> --
>  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
>  EnterpriseDB                             http://enterprisedb.com
>
>  PG East:  http://www.enterprisedb.com/community/nav-pg-east-2010.do
>
> --
> Sent via pgsql-novice mailing list (pgsql-novice@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-novice