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

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Need help to rewrite sql statement to improve performance

RE: Need help to rewrite sql statement to improve performance

From: Stephane Faroult <sfaroult_at_oriolecorp.com>
Date: Wed, 23 Apr 2003 10:01:52 -0800
Message-ID: <F001.00587E0A.20030423100152@fatcity.com>


>We have SQL statement use "is NOT null" and this
>sql
>statement use 2.5 million memory I/O. Does their
>has
>way to improve it? Thanks.
>
>select count(*) FROM EMP_TABLE
> where hire_date is not null
> and work_date is not null
>~

Mike,

  Since NULL values are stored (and therefore have a rowid) only when squeezed between not NULL values, Oracle doesn't expect to find them and always go for a full scan, in CBO as in RBO. An exception might be bitmap indexes, but I must confess to a dreadful lack of experience with these ones. Classic workarounds are using values which are not in your table ( ... hire_date > to_date('14-OCT-1066', 'DD-MON-YYYY') ...) which may (possibly with a little push) incite Oracle to scan an index, or making columns NOT NULL and using a default date by which time we'll all be six feet under. Side effects, it may badly inflate the size of your indexes.

Regards,

Stephane Faroult
Oriole

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Stephane Faroult
  INET: sfaroult_at_oriolecorp.com

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).
Received on Wed Apr 23 2003 - 13:01:52 CDT

Original text of this message

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