Index on the column of string with uppper?

Hello

I have the table containing the primary key of the string column. I want to create the index on the primary key and another column.

Best solution (for the performance) will be create index higher using as

ON TABLE (UPPER("ID"), ANOTHER_COLUMN)

or without SHANK

?

Best regards

m.

Hope that the ID is a primary key. If this query will return one row, and it will go for a sweep of unique index. Just remove the UPPER function and do like id = UPPER (value);

Before removing the UPPERCASE function, make sure that the data will be uppercase in the table.

Because of the HIGH, it will not hit the Unique index...

Tags: Database

Similar Questions

  • index on the column of low cardinality

    Hello
    Standard edition Oracle 10.2

    I have a 'status' column in my table. table contains about 100000 records.
    The possible values of status will be 1 or 2 (digital). This column will be 5 to 10 percent of the population, and the rest is null.

    Because it is seems that bitmap index is candidate for low cardinality column, but this picture has high of DML operations. SO by web research I learned about this bitmap causes problems of blocking on high DML operations.

    So I think that B-tree is only option left. Can you suggest a good index to improve performance on such a column?

    You don't need an index based on a function, do you think?

    You have a STATUS column where a small percentage of values is not null.

    To effectively access these lines whose STATUS is non-zero, simply create an index on the column State.

    This should be plenty effective.

    The effectiveness of this index (or the fbi if she was forced) is based on the fact that an index b-tree contains entry when the value is null (or all of the values in the case of a composite).

    There are those that 100000 is small and 5-10% is not particularly selective and you tell the width of the table, etc., so, even with the index here, it might not if used - i.e. depending on the circumstances it might be more efficient to do a FTS.

    It depends on what you want to do.

    See:
    http://asktom.Oracle.com/pls/asktom/f?p=100:11:0:P11_QUESTION_ID:4433887271030
    http://richardfoote.WordPress.com/2008/05/12/index-scan-or-full-table-scan-the-magic-number-magic-dance/

    Published by: Dom Brooks on February 10, 2011 12:58

  • Get the index of the column of table removed

    Is there a way to get the index of the column in a 2D table that has been deleted? In my application, the user has the possibility to use the right click option 'remove a column' on a 2D picture, but I would like to use this information to remove the same column in a different table programmatically. Is this possible?

    There is a file published in the documents of the community that refers to a location in a sheet of the user has clicked.  Use it like the image below.

    https://decibel.NI.com/content/docs/doc-22434

  • index on the column using custom function

    Can we create index on the column using custom function?

    http://www.dbasupport.com/Oracle/ora8/FBI.shtml

    Kind regards
    Kaila Mahesh

  • How to create indexes on the column xmtype

    Hello

    I have a table as follows

    CREATE TABLE T_TEST_XML (ID_PROCESSUS NUMBER, TXT_XML XMLTYPE);


    I query the table above very frequently with the query

    SELECT * FROM TXS T_TEST_XML WHERE EXISTSNODE (TXS. TXT_XML, '/ order [status = "PEN"]') = 1


    How to create function function index on the TXT_XML column for the xpath expression/order [status = "PEN"]' to improve the query performance?

    Thank you

    In fact if you are limited to the use of older software

    1 consider to define an XML schema and store XML using storage relational object.

    or

    2. If you need to store XML as CLOB to create the index on extractValue(), rather than existsNode() and provide the underlying value at the SQL level rather than the XPATH level.

    SQL> DROP TABLE T_TEST_XML
      2  /
    
    Table dropped.
    
    SQL> CREATE TABLE T_TEST_XML (PROCESS_ID NUMBER, TXT_XML XMLTYPE)
      2  /
    
    Table created.
    
    SQL> create INDEX T_TEXT_XML_IDX on T_TEST_XML( extractValue(TXT_XML,'/order/status'))
      2  /
    
    Index created.
    
    SQL> set autotrace on explain
    SQL> --
    SQL> SELECT *
      2    FROM T_TEST_XML TXS
      3   WHERE ExistsNode(TXT_XML,'/order[status="PEN"]') = 1
      4  /
    
    no rows selected
    
    Execution Plan
    ----------------------------------------------------------
    Plan hash value: 3001212210
    
    ---------------------------------------------------------------------------------
    | Id  | Operation          | Name       | Rows  | Bytes | Cost (%CPU)| Time     |
    ---------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT   |            |     1 |  2017 |    31   (0)| 00:00:01 |
    |   1 |  NESTED LOOPS SEMI |            |     1 |  2017 |    31   (0)| 00:00:01 |
    |   2 |   TABLE ACCESS FULL| T_TEST_XML |     1 |  2015 |     2   (0)| 00:00:01 |
    |*  3 |   XPATH EVALUATION |            |       |       |            |          |
    ---------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       3 - filter("P"."C_01$"='PEN')
    
    Note
    -----
       - dynamic sampling used for this statement (level=2)
    
    SQL> SELECT *
      2    FROM T_TEST_XML TXS
      3   WHERE extractValue(TXT_XML,'/order/status') = 'PEN'
      4  /
    
    no rows selected
    
    Execution Plan
    ----------------------------------------------------------
    Plan hash value: 1430727070
    
    ----------------------------------------------------------------------------------------------
    | Id  | Operation                   | Name           | Rows  | Bytes | Cost (%CPU)| Time     |
    ----------------------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT            |                |     1 |  2015 |     1   (0)| 00:00:01 |
    |   1 |  TABLE ACCESS BY INDEX ROWID| T_TEST_XML     |     1 |  2015 |     1   (0)| 00:00:01 |
    |*  2 |   INDEX RANGE SCAN          | T_TEXT_XML_IDX |     1 |       |     1   (0)| 00:00:01 |
    ----------------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    
       2 - access(EXTRACTVALUE(SYS_MAKEXML(0,"SYS_NC00003$"),'/order/status',null,0,0,5242
                  93,133120)='PEN')
    
    Note
    -----
       - dynamic sampling used for this statement (level=2)
    
    SQL>
    SQL>
    SQL>
    SQL>
    SQL>
    SQL>
    

    This allows the index press questioning on any status value, rather than just the PEN

  • Creation of several indexes of the columns of same

    Oradocs a little wave, at least my current source.

    When I create 2 indices of different types, example a bitmap another b-tree, on the same order of column, can both be running at the same time or if one of them must be invisible?

    He can't do it on my own, I have standard edition that does not support bitmap indexes

    Here:

    CREATE INDEX fun1 on employees (last_name);

    create fun2 index bitmap on employees (last_name);

    Thank you

    Oradocs a little wave, at least my current source.

    Docs? I don't see a link to any docs. We cannot comment on something that we cannot see. Post links to "Oradocs" you are talking about.

    When I create 2 indices of different types, a bitmap example another tree-b,.
    on the same column order, both can be operational in even
    time, or if one of them must be invisible?

    One of them may be visible. And several index on the same columns apply only to the 12 c.

    The Blog of Tom Kyte: 12 c - more than one index column even...

  • decide how to add indexes on the column

    Hi all

    I get about confious using index

    When should I decide to add index?

    http://docs.Oracle.com/CD/E11882_01/server.112/e25789/indexiot.htm#CNCPT811

    In general, consider creating an index on a column in any of the following situations:
    
        The indexed columns are queried frequently and return a small percentage of the total number of rows in the table.
    
        A referential integrity constraint exists on the indexed column or columns. The index is a means to avoid a full table lock that would otherwise be required if you update the parent table primary key, merge into the parent table, or delete from the parent table.
    
        A unique key constraint will be placed on the table and you want to manually specify the index and all index options.
    
  • Read the column of XMLTYPE with Parent and several child nodes

    Hello

    I have an xmltype column which stores the data in the format below. There is possible that some of the parent node will have several child nodes. I'm not able to extract children nodes. Get the error as a value of type multiset... required singleton...
    I tried the sub query, but it returns only the records from parent with children nodes.

    < CrntRgstns >
    < CrntRgstn empStDt = '2000-08-21' Auth = 'ABCD' regCat = 'BM' u4FlngDt = '2011-05-12' stDt = '2011-11-08' st 'EMPTY' = actvReg = "N" updateTS = "2011-11 - 08T 00: 37:42" >
    < CrntDfcnys / >
    < / CrntRgstn >
    < CrntRgstn empStDt = '2000-08-21' Auth = 'ABCD' regCat = 'BM' u4FlngDt = '2012-01-13' stDt = '2012-01-13' st = 'DÉFICIENT' actvReg = 'Y' updateTS = "2012-01 - 13 T 18: 02:19" >
    < CrntDfcnys >
    < CrntDfcny dfcnyCd = "TEST" exmCd = "M10" createDt = "2012-01-13" / >
    < CrntDfcny dfcnyCd = "TEST" exmCd = "X 40" createDt = "2012-01-13" / >
    < / CrntDfcnys >
    < / CrntRgstn >
    < CrntRgstn empStDt = "2000-08-21" Auth = "XYZ" regCat = "SU" u4FlngDt = '2012-01-13' stDt = '2012-01-13' st = 'DÉFICIENT' actvReg = 'Y' updateTS = "2012-01 - 13 T 18: 02:19" >
    < CrntDfcnys >
    < CrntDfcny dfcnyCd = "TEST" exmCd = "M10" createDt = "2012-01-13" / >
    < CrntDfcny dfcnyCd = "TEST" exmCd = "X 40" createDt = "2012-01-13" / >
    < / CrntDfcnys >
    < / CrntRgstn >
    < / CrntRgstns >

    I tried to use 2 xmltable querys and using the child node of the xmltable 1 as input to xmltable 2. But it returns only the records that has child nodes. But I wanted all the records of CrntRgstn and if no child node CrntDfcnys so that also displays.

    Thank you
    Vinod K

    I tried to use 2 xmltable querys and using the child node of the xmltable 1 as input to xmltable 2. But it returns only the records that has child nodes.

    You're almost there, you just have to do an outer join:

    SQL> select x1.empStDt
      2       , x1.Auth
      3       , x1.regCat
      4       , x2.*
      5  from documents t
      6     , xmltable(
      7         '/CrntRgstns/CrntRgstn'
      8         passing t.xmldoc
      9         columns empStDt date         path '@empStDt'
     10               , Auth    varchar2(30) path '@Auth'
     11               , regCat  varchar2(2)  path '@regCat'
     12               , CrntDfcnys xmltype   path 'CrntDfcnys'
     13       ) (+) x1
     14     , xmltable(
     15         '/CrntDfcnys/CrntDfcny'
     16         passing x1.CrntDfcnys
     17         columns dfcnyCd  varchar2(30) path '@dfcnyCd'
     18               , exmCd    varchar2(3)  path '@exmCd'
     19               , createDt date         path '@createDt'
     20       ) (+) x2
     21  ;
    
    EMPSTDT     AUTH                           REGCAT DFCNYCD                        EXMCD CREATEDT
    ----------- ------------------------------ ------ ------------------------------ ----- -----------
    21/08/2000  ABCD                           BM
    21/08/2000  ABCD                           BM     EXAM                           M10   13/01/2012
    21/08/2000  ABCD                           BM     EXAM                           X40   13/01/2012
    21/08/2000  XYZ                            SU     EXAM                           M10   13/01/2012
    21/08/2000  XYZ                            SU     EXAM                           X40   13/01/2012
     
    

    Note: I have tested the above on 11.2.0.2 and it seems that there is a bug, if we add an outer join on the first XMLTable operator too.
    Normally, the first outer join is not necessary, in order to also test on your version without it.

  • How to display the column single line with function of nested groups

    SQL > select deptno, Max (sum (sal)) SalSum
    2 of PEM
    3 Group of deptno;
    Select deptno, Max (sum (sal)) SalSum
    *
    ERROR on line 1:
    ORA-00937: not a single group group function

    Can you please help me to get the Max (sum (sal)) with Deptno...

    Or:

    select max(deptno) KEEP (DENSE_RANK LAST ORDER BY SalSum) deptno,
    max(SalSum) from  (
      select deptno,sum(sal) SalSum
      from emp
      group by deptno
    );
    
  • Sort by clicking the column of heade with LIFO

    Hello!

    I want to sort by the last entry is first (LIFO) in my report.
    To do this, I have to check United Nations ensure:
    Home > Application Builder > Application * > Page 1 > report attributes
    * (otherwise APEX indicates: "your query cannot include an"ORDER BY"clause when having the position active sort column".) *.


    When I followed the suggestion of APEX, my lost feature of report to sort by clicking the column header.
    I still want to keep sorting capacity on just any column by clicking the column header.


    Thanks in advance,

    Sam

    Sam:

    You want to create a process of type "Session State", then select 'Preferences to reset (delete all preferences the current user)' as the Type of State of Session process.
    This process subordinate to your button "Reset".

    CITY

  • How to show the value of string with spaces in separate columns

    Hi all, I am using Oracle 10 g.

    create table
    create table sample_test (
      Name    VARCHAR2(20 BYTE))
    Insert a table
    insert into sample_test values ('JOAN   SCT')
         insert into sample_test values ('MELIA FILCK')
          insert into sample_test values ('SSAN LIER-LILEY')
           insert into sample_test values ('C.M. DANY WES')
               insert into sample_test values ('A L SCOTT')
    Select * from sample_test;
    Name
    JOAN   SCT
    MELIA FILCK
    SSAN LIER-LILEY
    C.M. DANY WES
    A L SCOTT
    I would like the following output
    NAME1        NAME2      NAME3
    JOAN          SCT               
    MELIA        FILCK               
    SSAN       LIER-LILEY
    C.M.          DANY       WES
    A             L          SCOTT
    whenever there is a space in the name of the value next to who should be included in another column. Please note the name joan has TBS of two spaces. but it must be treated as a single space.

    also is it possible to get something like that
    NAME1        NAME2     
    JOAN          SCT               
    MELIA        FILCK               
    SSAN       LIER-LILEY
    C.M.DANY       WES
    A L          SCOTT
    the value before the first space on the right must be everything in domain Name1 Name2.

    Thanks in advance.

    Hello

    Since you have Oracle 10, you can use regular expressions:

    For the release of 3 columns:

    SELECT        REGEXP_SUBSTR (name, '[^ ]+', 1, 1)     AS name1
    ,        REGEXP_SUBSTR (name, '[^ ]+', 1, 2)     AS name2
    ,        REGEXP_SUBSTR (name, '[^ ]+', 1, 3)     AS name3
    FROM        sample_test;     
    

    [^ xyz] means "any character except x, y or z."
    + means "1 or more of the previous ones.
    The 4th argument to REGEXP_SUBSTR indicates where we want the appearance of the model.

    For the release of 2 columns:

    SELECT        REGEXP_REPLACE (name, ' *[^ ]+$')     AS before_last_space
    ,        REGEXP_SUBSTR  (name,   '[^ ]+$')     AS after_last_space
    FROM        sample_test;
    

    $ here means "the end of the string.

    In Oracle 10, you will often use REGEXP_REPLACE to get substrings.

    Thanks for posting the CREATE TABLE and INSERT statements; It's very useful!

    Published by: Frank Kulash, 7 Sep 2011 15:21

  • Compare the part of string with a string regardless of the position

    Hello team,

    I'm trying to compare a part of the A string to another string B, regardless of the position of the substring has b;

    for example B = 'g hitpp ert' B = ' erfg gret hitpp'

    If I try substr (A, 1, 7) = substr (B, 1, 7), it will be false

    However, I would check that, if the characters first seven 7 a [substr (A, 1, 7)] are found in the B channels any position, they are.

    Hello

    2986888 wrote:

    Hello team,

    I'm trying to compare a part of the A string to another string B, regardless of the position of the substring has b;

    for example B = 'g hitpp ert' B = 'erfg hitpp gret.

    If I try substr (A, 1, 7) = substr (B, 1, 7) going to be false

    However, I would check that, if the characters first seven 7 a [substr (A, 1, 7)] are found in the B channels any position, they are.

    One way to do that is

    ...

    WHERE b LIKE "%" | SUBSTR (a, 1, 7). '%'

    What you can do with AS you can also do this with REGEXP_LIKE, but in this case it will not significantly (as appropriate) more simple, and it will be less effective.

  • can I create an index on the column of duplicate lines?

    Hello

    I tried to create a unique index on an existing table, containing the duplicate lines.

    I want to create an index of type everything on this column of duplicate rows.

    If possible pls suggest me.


    Kind regards
    Vincent.

    Yes.

  • With the help of inplace column number of the column name in the SQL Select statement

    Is it possible to execute instructions select sql with the number of columns in
    place names of columns?

    Run SQL
    select AddressId,Name,City from Address
    Is it possible
    select 1,2,5 from Address
    Thanks in advance

    You can extract the names of the columns for user_tab_columns
    with

    SELECT Column_name
    FROM user_tab_columns
    where table_name = 'MY_TABLE'
    and Column_id in (1,2,5)
    

    Use dynamic SQL and then the result to get the values.

    But as others already mentioned, this wil it be given incorrect if your table is changed.

  • Sorting of columns in report with the invisible column...?

    Hello

    I have a sidecolumn + in a single report, which must be sorted as * 1, 1, 1 +, 2, 2, 2 + *.

    There is a second column invisible rating_order+ where I have the real sort order * 1,2,3,4,5,6 *.

    It is possible to sort the column visible rating+ with the sort link on the column header, but sorting through the invisible rating_order+ column...?

    Thank you

    Jürgen

    Jürgen

    Make the rating_order visible column. On the page "Column attributes" for this column under development shaped column, assign Expression HTML #RATING #.

    CITY

Maybe you are looking for

  • Using an iPad as a digital photo frame 1

    Hello I framed and wall mounted my iPad 1, so I can use it as a digital picture frame. But to put it on I have to remove the wall and remove the unit from the frame. I would also use to 'framework' other things beyond my photos. For example, showing

  • RunDLL

    A pop-up warning came RunDLL There was a problem check out David c:\Users[user-name]\Music\iTunes\iTunes \App Data\ Roaming\ anetp.dll The specified module could not be found How can this be corrected to get rid of this warning message?

  • 700 - 147C envy: cannot change bios to boot from backup USB Acronis. Startup command problem

    I tried to boot from my USB Acronis boot device to clone my C: drive to another HARD drive, but I was unable to set the boot order (first USB) because it keeps resetting & put the USB back where it was before.  I've done this before without problem;

  • HP Pavilion dv7-6153

    My HP Pavilion dv7-6153nr notebook AMD Quad Core computer, using Windows 7 Home Premium does not work... It turns on, try to start, but I got Oxc000000f on the screen with the message that says: the starting system failed because a required device is

  • Urbanship autostartup main method does not

    Hi friends, I use urbanship push notification they gave the following code to the main method. To autostartup. I use jde 6.0 I followed the step project > properties > Application tab > checked Autostart (box) and module system. but my (if) statement