agora inbox for pgsql-sql@postgresql.org  
help / color / mirror / Atom feed
From: ezequias@fastcon.com.br
To: Guy Fraser <guy@incentre.net>
To: pgsql-sql@postgresql.org
Subject: Re: Regular Expressions
Date: Tue, 27 Mar 2007 17:01:50 -0300
Message-ID: <web-47508192@correio2.docasdoporto.com.br> (raw)
In-Reply-To: <1174509146.26600.39.camel@sigurd.incentre.net>

Guy,

Could you give me a hand ?

I have a ZipCode table and my address table

I just would like to find out all matches that my zipcode table has where my 
address table appears like this:

Elmo Street, 30

I would like my SQL find out all matches we can find 'Elmo', 'Street'.

The commas, spaces and numbers could be forgive.

I hope you could help me

Regards

Ezequias


Em Wed, 21 Mar 2007 14:32:26 -0600
  Guy Fraser <guy@incentre.net> escreveu:
>On Wed, 2007-03-21 at 14:37 -0300, Ezequias R. da Rocha wrote:
>> Guy Fraser escreveu:
>> > On Wed, 2007-03-21 at 11:04 -0300, Ezequias R. da Rocha wrote:
>> >   
>> >> Hi list,
>> >>
>> >> I would like to know if postgresql has a Regular Expressions (Regex) 
>> >> implemented already.
>> >>
>> >> With it we could implement queries like
>> >>
>> >> Select * from myClientes where name = 'E[zs]equias'
>> >>
>> >>     
>> > Case Sensitive Regular Match ~
>> > Case Insensitive Regular Match ~*
>> > Negated Case Sensitive Regular Match !~
>> > Negated Case Insensitive Regular Match !~*
>> >
>> > Select * from myClientes where name ~ 'E[zs]equias'
>> >
>> >   
>> >> where the result occurs even if the field has Ezequias or Esequias.
>> >>
>> >> Regards
>> >> Ezequias
>> >>
>> >> ---------------------------(end of broadcast)---------------------------
>> >> TIP 2: Don't 'kill -9' the postmaster
>> >>
>> >>     
>> Great I am thinking of putting my like to rest. I felt it faster than 
>> "like" statement, have you any information about that ?
>> 
>
>No I don't know if regular expressions are faster than "LIKE" but 
>I think they are more flexible. When developing queries, I usually 
>try different methods of matching to find out what works best for 
>each circumstance. Some times upper() lower() and substr() with an 
>"=" are more effective than other methods.
>
>One of the more powerful features of PostgreSQL is the ability to 
>use sub-selects to reduce the time required to process a subset of 
>data from a larger volume of data.
>
>Example :
>
>select
> * 
>from (
> select
>  ss_time,
>  ss_date,
>  ss_type,
>  ss_data
> from
>  full_set
> where
>  ss_type in ('type_a','type_x')
> ) as sub_set 
>where
> upper(ss_data) ~ '[A-Z][0-9][A-Z] ?[0-9][A-Z][0-9]'
>order by
> ss_time,
> ss_date,
> ss_type 
>; 
>
>
>> Ezequias
>> 
>> ---------------------------(end of broadcast)---------------------------
>> TIP 7: You can help support the PostgreSQL project by donating at
>> 
>>                 http://www.postgresql.org/about/donate
>> 
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 7: You can help support the PostgreSQL project by donating at
>
>                http://www.postgresql.org/about/donate

--
Ezequias Rodrigues da Rocha



view thread (18+ messages)  latest in thread

Message-ID: <web-47508192@correio2.docasdoporto.com.br>
Permalink:  ../web-47508192@correio2.docasdoporto.com.br/
Also on:    postgresql.org/message-id/web-47508192@correio2.docasdoporto.com.br

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: ezequias@fastcon.com.br, guy@incentre.net
  Subject: Re: Regular Expressions
  In-Reply-To: <web-47508192@correio2.docasdoporto.com.br>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox