RE: tuning query with concat string.

  • From: "Igor Neyman" <ineyman@xxxxxxxxxxxxxx>
  • To: <sjaffarhussain@xxxxxxxxx>, "Wolfgang Breitling" <breitliw@xxxxxxxxxxxxx>
  • Date: Tue, 21 Mar 2006 11:02:40 -0500

Why would you want to re-write it?

This concatenation on the right side of  

ws_id = 'S'||userenv('SESSIONID')

doesn't prevent from using index on "ws_id" (if there is one, and that's
your concern).

Of cource, it'd be different story, if it would be the other way around,
i.e.:

Ws_id || 'S' = userenv('SESSIONID')

Igor

-----Original Message-----
From: oracle-l-bounce@xxxxxxxxxxxxx
[mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of The Human Fly
Sent: Tuesday, March 21, 2006 10:37 AM
To: Wolfgang Breitling
Cc: oracle-l
Subject: Re: tuning query with concat string.

I think my question was littble confused.

Okay, following is the query that I wanted to write,

select max(start_time) from  fm_audit_form where ws_id =
'S'||userenv('SESSIONID')

Is there any way that I can rewrite this query?

Long time ago, I have read that we can rewrite queries that has concat
in the where clause values.



On 3/21/06, Wolfgang Breitling <breitliw@xxxxxxxxxxxxx> wrote:
> SELECT ...... FROM where COLUMN = 'SVALUE2';
>
> :-)
>
> Quoting The Human Fly <sjaffarhussain@xxxxxxxxx>:
>
> > How can I rewrite the query which uses concatination in the where 
> > clause? For an example,
> >
> > SELECT ...... FROM where COLUMN = 'S'||'VALUE2';
> >
> --
> regards
>
> Wolfgang Breitling
> Oracle 7,8,8i,9i OCP DBA
> Centrex Consulting Corporation
> www.centrexcc.com
>
>


--
Best Regards,
Syed Jaffar Hussain
8i,9i & 10g, OCP DBA
Banque Saudi Fransi,
Saudi Arabia
http://jaffardba.blogspot.com/
------------------------------------------------------------------------
----------
"Winners don't do different things. They do things differently."
--
//www.freelists.org/webpage/oracle-l



--
//www.freelists.org/webpage/oracle-l


Other related posts: