Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: SQL: Combine LIKE and IN statement?

Re: SQL: Combine LIKE and IN statement?

From: Dave <davidr21_at_hotmail.com>
Date: 12 Feb 2004 01:01:29 -0800
Message-ID: <8244b794.0402120008.35580cdb@posting.google.com>


Mark.Powell_at_eds.com (Mark D Powell) wrote in message news:<2687bb95.0402111800.3d4a3768_at_posting.google.com>...
> Bob <no_at_mail.com> wrote in message news:<sBuWb.531553$_x2.1127068_at_zonnet-reader-1>...
> > Can anyone tell me how to improve the following:
> >
> > Select tbl.city
> > From tbl
> > Where tbl.city like 'B%' or
> > tbl.city like 'G%' or
> > tbl.city like 'R%'
> >
> > I was trying:
> > Where tbl.city like in ('B%', 'G%', 'R%')
> > But apparently this is not the right way.
> >
> >
> > Thanx,
> > Bob
>
> Bob, is there an index on the city column? How about posting the
> explain plan for the statement so we can see how Oracle choose to
> solve the query? Are your running cost or rule based? Are the
> statistics current? etc....
>
> HTH -- Mark D Powell --

I can see where this OR/LIKE thing would be an issue when the like criteria is more "like" '%X%'

but in your example couldn't you just have done this...

Select tbl.city
From tbl
Where substr(tbl.city, 1, 1) in ( 'B', 'G', 'R' )

not sure if index will be used in this case...

Dave Received on Thu Feb 12 2004 - 03:01:29 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US