Different operator where condition using or not the index

Hello

I have a table named sales with the index on the column of the day
sales( id integer, day date, value number);
CREATE INDEX IDX_SALES_DAY ON SALES (DAY)  LOGGING TABLESPACE SIRIUS_IDX NOPARALLEL;
and I want to choose
select value from sales where day >= sysdate; 
but it does not use the index.

When I select
select value from sales where day = sysdate; 
It uses the index...

What do I use the index when I use > = operator?

I also tried
select /*+(IDX_SALES_DAY)*/ value from sales where day >= sysdate; 
But nothing helped...


Thank you
Concerning
Nicolae

Function of the distribution of the data could have more effective NOT to use the index. If you want to discuss more in detail, please provide the information contained in the identified threads:

{message: id = 1812597}

{: identifier of the thread = 863295}

Tags: Database

Similar Questions

  • How I picked my email address when I don't have an alternative email to reset it and the mobile operator that I use is not there at all. Thank you

    How I picked my email address when I don't have an alternative email address to reset and also the mobile operator I'm using is not listed it at all.

    Hotmail gives me a few options, but non of them is useful to me...

    The problem is probably my junk e-mail generated from my e-mail address or something else, I don't know about you!

    Thank you

    Hi Beqiri2012,

    Just to clarify, please repost your question on the Hotmail Forums below to help with your Hotmail account number:

    http://windowslivehelp.com/forums.aspx?ForumID=d3fda415-1e53-4007-8e0c-2a77180ffb1d

    Thank you!

  • How to batch, fusion of the 3 different images? I use molten and the total of 240 different images.

    How to batch, fusion of the 3 different images? I use molten and the total of 240 different images.
    is there any script for it?

    like photoshop, batch processing is unable to identify 3 different images and merge these three images. Instead, it performs the action on a single image.

    Thank you

    under the direction

    // 2015, use it at your own risk;
    #target photoshop
    var theFolder = Folder.selectDialog ("select folder");
    if (theFolder) {
    ////////////////////////////////////
    var theFolders = theFolder.getFiles(getFolders);
    for (var a = 0; a < theFolders.length; a++) {
    var theFiles = Folder(theFolders[a]).getFiles(/\.(jpg|tif|eps|psd)$/i);
    ////////////////////////////////////
    // open first image;
    theFile = app.open(theFiles[0]);
    var basename = theFile.name.match(/(.*)\.[^\.]+$/)[1];
    // place other files;
    for (var m = 1; m < theFiles.length; m++) {
    placeScaleRotateFile (theFiles[m], 0, 0, 100, 100, 0, false);
    // set to screen;
    theFile.activeLayer.blendMode = BlendMode.SCREEN
    };
    // save as psd;
    psdOpts = new PhotoshopSaveOptions();
    psdOpts.embedColorProfile = true;
    psdOpts.alphaChannels = true;
    psdOpts.layers = true;
    psdOpts.spotColors = true;
    theFile.saveAs((new File(theFolder+'/'+basename+".psd")),psdOpts,false);
    };
    };
    ////////////////////////////////////
    ////// place //////
    function placeScaleRotateFile (file, xOffset, yOffset, theXScale, theYScale, theAngle, linked) {
    // =======================================================
    var idPlc = charIDToTypeID( "Plc " );
        var desc5 = new ActionDescriptor();
        var idnull = charIDToTypeID( "null" );
        desc5.putPath( idnull, new File( file ) );
        var idFTcs = charIDToTypeID( "FTcs" );
        var idQCSt = charIDToTypeID( "QCSt" );
        var idQcsa = charIDToTypeID( "Qcsa" );
        desc5.putEnumerated( idFTcs, idQCSt, idQcsa );
        var idOfst = charIDToTypeID( "Ofst" );
            var desc6 = new ActionDescriptor();
            var idHrzn = charIDToTypeID( "Hrzn" );
            var idPxl = charIDToTypeID( "#Pxl" );
            desc6.putUnitDouble( idHrzn, idPxl, xOffset );
            var idVrtc = charIDToTypeID( "Vrtc" );
            var idPxl = charIDToTypeID( "#Pxl" );
            desc6.putUnitDouble( idVrtc, idPxl, yOffset );
        var idOfst = charIDToTypeID( "Ofst" );
        desc5.putObject( idOfst, idOfst, desc6 );
        var idWdth = charIDToTypeID( "Wdth" );
        var idPrc = charIDToTypeID( "#Prc" );
        desc5.putUnitDouble( idWdth, idPrc, theYScale );
        var idHght = charIDToTypeID( "Hght" );
        var idPrc = charIDToTypeID( "#Prc" );
        desc5.putUnitDouble( idHght, idPrc, theXScale );
        var idAngl = charIDToTypeID( "Angl" );
        var idAng = charIDToTypeID( "#Ang" );
        desc5.putUnitDouble( idAngl, idAng,theAngle );
    if (linked == true) {
        var idLnkd = charIDToTypeID( "Lnkd" );
        desc5.putBoolean( idLnkd, true );
      };
    executeAction( idPlc, desc5, DialogModes.NO );
    // get layerid;
    var ref = new ActionReference();
    ref.putProperty (stringIDToTypeID ("property"), stringIDToTypeID ("layerID"));
    ref.putEnumerated( charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
    var layerDesc = executeActionGet(ref);
    var layerID = layerDesc.getInteger (stringIDToTypeID ("layerID"));
    // =======================================================
    return [app.activeDocument.activeLayer, layerID];
    };
    ////// get folders //////
    function getFolders (theObj) {
    if (theObj.constructor == Folder) {return true}
    };
    
  • Where conditional Clause based on the length of the field

    Hello people,
    I tried to search for this scenario in OTN and not been able to find any success so I will post the question here.

    I have two tables - with the detail records and the other being a table of codes. I need to join these two tables based on the code and the length of the code. Let me explain using examples.

    Scripts for creating the table and inserts
    create table ILLNESS_CODES(illness_code varchar2(4), illness_description varchar2(100));
    create table PATIENT_TB(patient_id varchar2(4), primary_cause varchar2(4));
    
    insert into illness_codes values('B10', 'Flu');
    insert into illness_codes values('B30', 'Hepatitis');
    insert into illness_codes values('B301', 'Hepatitis A');
    insert into illness_codes values('B302', 'Hepatitis B');
    insert into illness_codes values('B303', 'Hepatitis C');
    
    insert into patient_tb values ('1001', 'B101');
    insert into patient_tb values ('1002', 'B102');
    insert into patient_tb values ('1003', 'B30');
    insert into patient_tb values ('1004', 'B301');
    insert into patient_tb values ('1005', 'B302');
    insert into patient_tb values ('1006', 'B302');
    insert into patient_tb values ('1007', 'B303');
    insert into patient_tb values ('1008', 'B30');
    As you can see that patients * 1001 * and * 1002 * have no codes in the Master table. In this case, I want only the first 3 characters of the ILLNESS_CODES table.
    However, for B30, it has a Code and the same for B301, B302 B303 where I would meet the description based on the exact code.

    Example of output
    Patient ID   Illness Description
    =====================================
    1001         Flu
    1002         Flu
    1003         Hepatitis
    1004         Hepatitis A
    1005         Hepatitis B
    1006         Hepatitis B
    1007         Hepatitis C
    1008         Hepatitis
    Thanks in advance!
    SELECT p.*,
           NVL ( (SELECT illness_description
                    FROM ILLNESS_CODES I
                   WHERE i.illness_code = p.primary_cause),
                (SELECT illness_description
                   FROM ILLNESS_CODES I
                  WHERE i.illness_code = SUBSTR (p.primary_cause, 1, 3)))
      FROM PATIENT_TB p;
    
  • Maintaining Acrobat IX and don't use only not the cloud.

    Hello, I'm not interested by the use of the cloud.  I have Acrobat XI and it works fine.  How can I keep and use my old program?

    Hey bernitaw28398602,

    According to my understanding, you have been asked to install Acrobat DC (being a Subscriber CC or Acrobat XI), but you want to continue using Acrobat XI only.

    So, if you want to uninstall the DC and back to Acrobat XI, then check out the below given KB file link for the same:

    Acrobat DC uninstalled Acrobat XI | How to get Acrobat XI

    Let me know if you need more assistance.

    Happy to help you.

    Kind regards

    Ana Maria

  • Noise from the device Bluetooth becomes intermittent after use is not the device for a few minutes

    Qualcomm Atheros Communications - update the Bluetooth controller?

    Hello

    Check with the mother system/card manufacturer for on-board and/or real device
    site of the manufacturer for updated drivers and troubleshooting steps.

    Check then both of these still newer driver versions.

    Atheros - drivers
    http://www.Atheros.cz/

    Qualcomm-Atheros - drivers
    http://www.QCA.Qualcomm.com/resources/driverdownloads/

    I hope this helps.

    Rob Brown - Microsoft MVP<- profile="" -="" windows="" expert="" -="" consumer="" :="" bicycle="" -="" mark="" twain="" said="" it="">

  • How to exclude folders while they are not the index by Windows Media Player 12, but are available in Media Center?

    Just upgraded to Windows 7 from Vista and am having a problem with Windows Media Player 12 and its indexing.  In WMP11, you could put all your pictures in your "My pictures" folder (so they appear in the Media Center) but then exclude it from indexing in WMP11, then it would not bog you try to index all things.

    This option has been removed in WMP12.  If you want images to appear in the Media Center, they must be included in your WMP12 library. (Even if Media Center does not use the WMP library to ALL display pictures - she designs per file)

    Because I have thousands of photos and videos, this is a major problem at any time an Extender is turned on, because for some reason when you start an Extender it forces a new scan of all your media.  It is in turn completely failed the system leaving the main centre of the media both all completely unnecessary extensions while CPU hits 100%.

    So I have my girlfriend trying to listen to music in the bedroom on the XBOX360 giving me eyes stink saying "This sucks." and my daughter in the TV room to complain than his scooby-doo show "keeps skipping and stopping."

    Hello danwheeler, welcome.

    There are several ways to do it, however, I offer an option to try more than one backend solution.

    For purposes of reference, take a look at this thread if the solution below does not work:
    http://social.answers.Microsoft.com/forums/en-us/w7music/thread/67ac2992-e76e-408a-90a8-0fa173885a6e

    Try this:

    1. click on START
    2. click on "Control Panel."
    3. double click on "Folder Options".
    4. Click to "Show hidden files & folders".
    5. click on 'Apply' at the bottom right
    6. close Windows Media Player and other applications (REQUIRED)

    7. click on START
    8. click on 'computer '.
    9. double-click on "disk Local (c)"
    10. double click on "users".
    11. double click your user name
    12. double-click on "AppData".
    13. double-click on "Local".
    14. double click on "Microsoft."
    15. double-click on 'Media Player '.

    16 "wmpfolders.wmdb" right click and select open with
    17. If Notepad is not in the list, click Browse and find Notepad in C:\Windows
    18. Once you select the Notepad, click Ok and notepad opens the database file

    19. If you see a folder in the list that you want to exclude, on the line of code, look for ' exclude = '0' "and replace the '0' with a '1'.
    20. If the folder you want to exclude is NOT in the list, and then add this right after the last line of

    21. click on file > save
    22. restart your computer

    The issue must be resolved. These instructions are not easy to use, so if you have any quesetions, please ask.

    Let us know if it works,

    Thank you! Ryan Thieman
    Microsoft Answers Support Engineer
    Visit our Microsoft answers feedback Forum and let us know what you think.

  • Performance the use of a 'Like' filter * is not due to the index right question *.

    Hello
    We have just published an Oracle APEX application for users and encountered a performance problem in the production version that wasn't developing. The interactive report contradicts a simple view that returns data similar to:

    NAME VALUE MIN MAX
    1 1 3 BEL123
    3 3 4 BEL245
    2 1 3 AB222


    The problem is that when you use a filter on the column name with a similar operand (name LIKE "% NICE"). Performance of the queries are very poor (average is 29 seconds to return based on the statistics of the APEX). Are huge paintings, but the performance development is fast (almost instantly). Here are the things I looked in to try to identify the problem:

    (1) I tried to run the same exact query in SQL * more performance is fast in production and development, so it's not the index.
    (2) creating any new reports from zero causes the same results in production and development. So its not anything specific that has been changed in both versions (which are identical)
    (3) put the NAME Like "% NICE" directly in the clause the report SQL product quick returns in production, so the problem is not the user of APEX not seeing the index for some reason any. It also ensures that differences in data in two databases are not the cause of this.

    So my only theory that is somehow using similar filter does not allow the index on the column NAME to be used, but only in the production. Any ideas... I am at a loss.

    Published by: user491396 on January 7, 2009 14:18

    I think that if you run the same exact query that generates the APEX, it wouldn't matter if you ran the query of the APEX or SqlPlus. He would still use the same execution plan.
    It seems to me that the optimizer for some reason any do not push predicates in the view which might then a more optimal plan. You could try the 'PUSH_PREDICATE' or 'FIRST_ROWS' advice in the report query and check the generated execution plans to see if they change.

    CITY

  • Shot summary of a where condition clause...

    I have a form that displays the code material and this number in which different warehouses...

    It is possible to create an element of the summary screen is based on the place where the condition

    for ex.
    SQL> select  sum(arar) from tbs;
    
     SUM(ARAR)
    ----------
          1488
    
    for this query i can create a  display item and in the propery  pallete  i can select mode as summary,
    summary function as count, and select respective block and item...
    
    what i want to know is can this be based on where condition 
    some thing like the count shoudn't include where the column values is zero
    SQL> select count(arar) from tbs where arar!='0';
    
    COUNT(ARAR)
    -----------
            144
    Published by: Chase Suhail on November 9, 2010 22:45

    Hello

    Create a column of formulas no database in the same block to say 'NON_ZERO.
    The formula for the column would be: SET_NON_ZERO - this function returns 1 if arar is non-zero and 0 if it is zero.

    FUNCTION SET_NON_ZERO RETURN NUMBER IS
    BEGIN
     IF :ARAR = 0 THEN
       RETURN (0);
     ELSE
       RETURN (1);
     END IF;
    END;
    

    Now you can create a column of synthesis and use the text-to-speech function 'sum' and item summarised as "NON_ZERO.

    I hope this helps.

    Best regards

    Arif Khadas

  • during the partition: how to use to return the max of two columns

    Each unique id, I want to select the col2 value in the folder with the most recent date.
    When the lines with the same IDS have the same dates, I select the max value of col2.
    I want a line for each ID, but I get two rows for ID 3333333.

    with the data as
    (
    Select 1111111 as id, 'a' as col2, to_date('01-JAN-09','dd-mon-yyyy') like double union all the_date
    Select 2222222 as id, 'b' as col2, to_date('02-JAN-09','dd-mon-yyyy') like double union all the_date
    Select 2222222 as id, 'c' as col2, to_date('03-JAN-09','dd-mon-yyyy') like double union all the_date
    Select 2222222 as id, would be "like col2, to_date('04-JAN-09','dd-mon-yyyy') as the_date of all the double union"
    Select 3333333 as id, 'e' as col2, to_date('05-JAN-09','dd-mon-yyyy') like double union all the_date
    Select 3333333 as id, 'f' as col2, to_date('05-JAN-09','dd-mon-yyyy') like double the_date
    )
    SELECT id, col2, the_date
    Of
    (
    SELECT id, the_date, max (the_date) or col2 in (score by id) as max_the_date, max (col2) over (partition of col2) as max_col2
    from the data
    )
    where the_date = max_the_date and col2 = order by id max_col2


    Expecting this:
    COL2 ID THE_DATE
    1111111 a 01/01/09
    2222222 d 04/01/09
    3333333 f 05/01/09

    but I get 2 rows for ID 3333333

    Any suggestions?

    Use row_number(), not the max() to compare.

    with data as
    (
    select 1111111 as id, 'a' as col2, to_date('01-JAN-09','dd-mon-yyyy') as the_date from dual union all
    select 2222222 as id, 'b' as col2, to_date('02-JAN-09','dd-mon-yyyy') as the_date from dual union all
    select 2222222 as id, 'c' as col2, to_date('03-JAN-09','dd-mon-yyyy') as the_date from dual union all
    select 2222222 as id, 'd' as col2, to_date('04-JAN-09','dd-mon-yyyy') as the_date from dual union all
    select 3333333 as id, 'e' as col2, to_date('05-JAN-09','dd-mon-yyyy') as the_date from dual union all
    select 3333333 as id, 'f' as col2, to_date('05-JAN-09','dd-mon-yyyy') as the_date from dual
    )
    select id, col2, the_date
    from (select id,
                 the_date,
                 col2,
                 row_number() over (partition by id order by the_date desc, col2 desc) r
          from data)
    where r = 1;
    
    ID                     COL2 THE_DATE
    ---------------------- ---- -------------------------
    1111111                a    01-JAN-09
    2222222                d    04-JAN-09
    3333333                f    05-JAN-09                 
    
    3 rows selected
    

    Published by: tk-7381344 on March 5, 2009 11:46

  • The Indexing Service does not not on Windows server R2 (Server Manager)

    In Windows 7 Enterprise or Windows 8

    I activated the indexing service in or out of the Windows features screen.

    After installed I restart the server. Opens the computer management on the server. Indexing Service installed appears under the Services and Applications

    In Windows Server R2 2012, I turned the "Windows Search Service".

    In the computer management screen, showing not the indexing service. ?

    Please help me on this.

    If I had no bad thing help me.

    Thanks :)

    This issue is beyond the scope of this site (for consumers) and to be sure, you get the best (and fastest) reply, we have to ask either on Technet (for IT Pro) or MSDN (for developers)
  • Invalidation of the index based on a function because the recompilation

    Hello

    one of our customers has two indices according to the functions that fall under the State "off" in some situations. After looking more closely at the situation, there are some things that my opinion are different from what I expected of a function-based index. Because I am unable to find anything about either on metalink (or I'm not asking the right question) I would appreciate a second opinion of you.

    To keep things simple, I gave an example to illustrate the behavior. I use Oracle 12.1.0.2, although it can also be reproduced on versions 10.2 and 11.2.

    It's my environment and three parameters that I find relevant to the discussion:

    SQL> select banner from v$version;
    
    BANNER
    ----------------------------------------------------------------------------
    
    Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
    PL/SQL Release 12.1.0.2.0 - Production
    CORE    12.1.0.2.0      Production
    TNS for Linux: Version 12.1.0.2.0 - Production
    NLSRTL Version 12.1.0.2.0 - Production
    
    SQL> show parameter remote_dependencies
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ----------
    remote_dependencies_mode             string      TIMESTAMP
    
    SQL> show parameter query_rewrite
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- -------------
    query_rewrite_enabled                string      TRUE
    query_rewrite_integrity              string      enforced
    

    Test case:

    SQL> CREATE OR REPLACE FUNCTION f1 (p_string IN VARCHAR2)
      2  RETURN VARCHAR2
      3  DETERMINISTIC
      4  IS
      5  BEGIN
      6    RETURN lower(p_string);
      7  END f1;
      8  /
    
    Function created.
    
    SQL> CREATE TABLE tmp_t1 (a_string VARCHAR2(10));
    
    Table created.
    
    SQL> INSERT INTO tmp_t1 VALUES ('a');
    
    1 row created.
    
    SQL> COMMIT;
    
    Commit complete.
    
    SQL> CREATE INDEX x1_tmp_t1 ON tmp_t1(f1(a_string));
    
    Index created.
    
    SQL> set linesize 80;
    SQL> column index_name format a10;
    SQL> SELECT index_name, index_type, status, funcidx_status
      2    FROM user_indexes;
    
    INDEX_NAME INDEX_TYPE                  STATUS   FUNCIDX_
    ---------- --------------------------- -------- --------
    X1_TMP_T1  FUNCTION-BASED NORMAL       VALID    ENABLED
    

    We have our table and our based on an index function which basically converts the values to lowercase. From here on things, download a little weird. What happens with the index based on a function if the underlying function is recompiled? I always thought (and which is also stated in the Concepts and the use of function index (Doc ID 66277.1)) that the index would change its status to "disabled". Here is an excerpt of the said Doc ID:

    The index depends on the State of the PL/SQL function. The index can be

    struck down or rendered useless by changes to the function. The index is marked

    People with DISABILITIES, if he is brought to the function or function is re-created.

    The timestamp of the function is used to validate the index.

    To allow the index after it is created, the function if the signature of the

    the function is identical to the front:

    ALTER INDEX ENABLE;

    If the signature of functions is changed, to make the changes effective

    in the index, the index must be renewed to make it valid.

    ALTER INDEX REBUILD.

    It seems that this is not the case, as the index remains valid and activate.

    SQL> alter function f1 compile;
    
    Function altered.
    
    SQL> SELECT index_name, index_type, status, funcidx_status
      2    FROM user_indexes;
    
    INDEX_NAME INDEX_TYPE                  STATUS   FUNCIDX_
    ---------- --------------------------- -------- --------
    X1_TMP_T1  FUNCTION-BASED NORMAL       VALID    ENABLED
    

    OK, explicitly recompiling function F1 single timestamp changed. What if we replace the function completely and we change the output of the function - for example we will switch from a LOWER function to SUPERIOR function in the body of the F1. Again, it is change that I thought would be not only to disable the index based on a function, but also force its reconstruction. At least that is my understanding of the explanation in Doc ID).

    SQL> CREATE OR REPLACE FUNCTION f1 (p_string IN VARCHAR2)
      2  RETURN VARCHAR2
      3  DETERMINISTIC
      4  IS
      5  BEGIN
      6    RETURN UPPER(p_string);
      7  END f1;
      8  /
    
    Function created.
    
    SQL> SELECT index_name, index_type, status, funcidx_status
      2    FROM user_indexes;
    
    INDEX_NAME INDEX_TYPE                  STATUS   FUNCIDX_
    ---------- --------------------------- -------- --------
    X1_TMP_T1  FUNCTION-BASED NORMAL       VALID    ENABLED
    
    

    Should not be. Because of the function "create or replace" F1 never go through a "invalid" phase which may be necessary for index becomes unusable? What about queries on the TMP_T1 table? Does optimizer always uses access index or not? What about the results?

    SQL> EXPLAIN PLAN SET statement_id='s1' FOR
      2  SELECT a_string, f1(a_string) as f1_a_string, f1('a') as f1_literal
      3    FROM tmp_t1
      4   WHERE f1(a_string) = 'a';
    
    Explained.
    
    SQL> SELECT * from table(dbms_xplan.display(statement_id=>'s1'));
    
    PLAN_TABLE_OUTPUT                                                                                                   
    ------------------------------------------------------------------------------------------------------------------------
    Plan hash value: 3133804460                                                                                         
                                                                                                                        
    -------------------------------------------------------------------------------------------------                   
    | Id  | Operation                           | Name      | Rows  | Bytes | Cost (%CPU)| Time     |                   
    -------------------------------------------------------------------------------------------------                   
    |   0 | SELECT STATEMENT                    |           |     1 |  2024 |     2   (0)| 00:00:01 |                   
    |   1 |  TABLE ACCESS BY INDEX ROWID BATCHED| TMP_T1    |     1 |  2024 |     2   (0)| 00:00:01 |                   
    |*  2 |   INDEX RANGE SCAN                  | X1_TMP_T1 |     1 |       |     1   (0)| 00:00:01 |                   
    -------------------------------------------------------------------------------------------------
    

    The index is used by the optimizer, see the results.

    SQL> column f1_a_string format a15;
    SQL> column f1_literal format a15;
    SQL> SELECT a_string, f1(a_string) as f1_a_string, f1('a') as f1_literal
      2    FROM tmp_t1
      3   WHERE f1(a_string) = 'a';
    
    A_STRING   F1_A_STRING     F1_LITERAL
    ---------- --------------- ---------------
    a          a               A
    

    A_STRING = value in the table

    F1_A_STRING = value of f1 (a_string) but the value is not evaluated because it comes from an index, so tiny value (remember, at the time index created the function returned small values)

    F1_LITERAL = value of the function f1 newly evaluated, using literal instead of the value in the table.

    Predicate f1 (a_string) = 'a' should return no rows because no character uppercase is equivalent to "a". Query with f1 (a_string) = 'A' should return a line, but it doesn't.

    SQL> SELECT a_string, f1(a_string) as f1_a_string, f1('a') as f1_literal
      2    FROM tmp_t1
      3   WHERE f1(a_string) = 'A';
    
    no rows selected
    

    Anyone know if this is an expected behavior? And, is it possible to disable the index based on a function whenever the underlying function signature is changed? The parameter query_rewrite_integrity = applied from

    DOC-ID 66277.1 does not seem to do the trick:

    (c) session variables

    ~~~~~~~~~~~~~~~~~~~~

    QUERY_REWRITE_ENABLED (true, false),

    QUERY_REWRITE_INTEGRITY (confidence, forced, stale_tolerated)

    determines the optimizer to use index based on a function with

    expressions using SQL, user defined functions functions.

    TRUST: Oracle allows rewrites using relationships that have

    was declared.

    APPLIED: Oracle ensures and guarantees consistency and integrity.

    STALE_TOLERATED: Oracle allows rewrites using vessels of the relationship not applied.

    Used in the case of materialized views.

    Set session variable cost function optimizer to choose the

    a function-based index

    Kind regards

    SAMO

    From the Manual 11.2 ( https://docs.oracle.com/cd/E11882_01/appdev.112/e41502/adfns_indexes.htm#ADFNS254 )

    "If you change the semantics of a DETERMINISTIC run and recompile, then you must manually rebuild all addicts depending on index and materialized views." Otherwise, they report results for the previous version of the function. »

    This note is not that I made my initial comment well - which was based on an incorrect memory the relationship between function-oriented and autonomous pl/sql functions, so I won't try to explain it. In fact, I went back to Oracle 8i practice to see if something had changed between yesterday and today and found that I had described exactly the behavior that the OP has been seeing. It's the way it is supposed to be.

    Concerning

    Jonathan Lewis

  • How the index data are managed within the cluster?

    Hello

    We are evaluating the consistency.

    Regarding indexes, am I right in thinking that the data in the index are stored in a (managed internally) cache on the same node that the attendant at the following indexed values? I'm not interested in getting the data in the index, but rather just to understand how the data in the index itself are stored or processed within the cluster.

    So in a 2 cluster node where an index is applied to a distributed cache that has only 2 entries, will there be a key cache on each node 1 {binary,} to enter key where the key points to the value that is stored on this same node? In other words, I'm sure that the index data to be spread out in the cluster in the case of a partitioned topology?

    Concerning
    Peter

    user11279467 wrote:
    Hello

    We are evaluating the consistency.

    Regarding indexes, am I right in thinking that the data in the index are stored in a (managed internally) cache on the same node that the attendant at the following indexed values? I'm not interested in getting the data in the index, but rather just to understand how the data in the index itself are stored or processed within the cluster.

    So in a 2 cluster node where an index is applied to a distributed cache that has only 2 entries, will there be a key cache on each node 1 {binary,} to enter key where the key points to the value that is stored on this same node? In other words, I'm sure that the index data to be spread out in the cluster in the case of a partitioned topology?

    Concerning
    Peter

    Hi Peter,.

    up to 3.4.x index have been supported only on partitioned topology, and Yes, the index on each node contain only the data corresponding to the entries that have their main copy on this node (referred to as entered local subsequently).

    The indexes are not stored in a cache, but they are managed under the information that maintains consistency in terms of backup (the map that contains local entries).

    The indexes are in 2 parts:

    -index to the front: this is a mapping of the cache key in an internal representation (Playback key card in the future) the value extracted with the extractor used to create the index of the entry to membership of the cache key (value extracted later)

    -reverse index (aka. reversed card): this is a map of the value extracted from a backup set of the keys of the map of entries which we extract the index key reversed with the extractor used to create the index

    The index can be sorted, which means that the index reversed a SortedMap (sort order is the order of the extracted values)

    Let's see an example. Assuming you have the contents of the following cache within a particular extension storage node:

    A--> Object (PositionX = 5,...)
    B--> object (getA = 3,...)
    C--> object (getA = 3,...)
    D--> object (getA = 4,...)

    The index forward in this node will contain:

    Binary (A)--> 5
    Binary (B)--> 3
    Binary (C)--> 3
    Binary (D)--> 4

    The reverse index will contain:

    3--> {Binary (B), Binary (C)}
    4--> {Binary (D)}
    5--> {Binary (A)}

    Where Binary (...) designates the internal representation (binary) of the... object.

    If the index is not ordered, then the order of iteration over the entries in the index reversed are not deterministic.

    If the index is ordered, the iteration of the entries into the inverted index will be as stated above. Also, you can convert the SortedMap inverted index in order to have the very useful headMap and tailMap and firstKey and lastKey methods.

    I hope this helps.

    Best regards

    Robert

  • Case where the Condition when Clause Condition use

    Hello

    How can I use case in the where condition and in when I need to use a condition, be clearly
    I need to get the following
    and (case WHEN :PROMT = 'Closed' then
     status_date >= trunc(sysdate))  end)
    When I run the present, I'm missing keyword error.

    How can I solve this?

    I think you can do it just like this:

    ...
    and ( :PROMPT != 'Closed' or status_date >= trunc(sysdate) )
    ...
    
  • Why can't I not move the button reload at left where it used to be?

    I have used firefox since the dawn of time and have many ingrained habits, such as moving the mouse to the top left next to the House and "back" button to find refill. Now, it is oddly locked to the right of the URL bar. When will this be fixed? I read "solutions" involving downgrade firefox or some plugin/addon/tirepatch - but I'm waiting for a real solution. At this point, the chrome is the best option.

    You know, the Restorer Classic theme that solves it for me. In contrast to my experience in the past when installing an addon was rocket science, it's trivially easy and less than a minute, I have a button reload where I want (so my old habits may find it). I always plead for what actually an attribute of 'tunable' native interface for firefox. Indeed there is now a redundant reload button where firefox insists he, but I can live with that. So thank you, this removes indeed the main source of nuisance.

Maybe you are looking for

  • How to make the font bigger on the items on the web?

    I think it is quite specific. I can't read a lot of articles on the web, because the font is too small. How can I make it bigger?

  • They can put a man on the Moon, but...

    Just to download text messages from my Inbox to my desktop? I have an i680 and I connect to my PC via the USB port. The proper drivers are installed, and I can transfer files back from the microSD card in the phone to my heart. Why can't I transfer S

  • CD/DVD drive does not work - error code 39 on Satellite A300

    Good evening.I have a problem with my Satellite A300.I can't get the drive to function. Device Manager indicates that the driver is current. But also says that it is corrupted "code 39".I tried to download the new Toshibas website drivers but they ar

  • How to create a channel for a PXI-6509

    I'm working on a program to fight the PXI-6509. The only area that I have problems with creates the string by calling the function DAQmxCreateDOChan. I get no errors during the first DAQmxCreateTask, but get an error when you try to create the channe

  • Pavilion G6-2270ex: Windows 8 download and prudct key

    Hello I have a pavilion 2270ex G6 notbook I need to know what is the virsion of windows 8, so I can download it and how can I get my prudact key I have download windows8 singel lunguge but it gives me the key prudact and win8proand interprise