Adding column in table having millions of records

Hi,
Oracle release :11.2.0.3
Table A exists with millions of records. - has many indexes on it.
Need to add one column which exists in table B with same no of records.
Rowid is common join condition between table A and B to update this new column in A.
Please advice the fastest way to update this column.
Explain plan output for update query is :
| Id  | Operation                                                   | Name                  | Rows  | Bytes | Cost (%CPU)| Time     |
|   0 | UPDATE STATEMENT                             |                       |   181M|  3287M|    95T  (1)|999:59:59 |
|   1 |  UPDATE                                                | A                     |       |       |            |          |
|   2 |   PX COORDINATOR                                |                       |       |       |            |          |
|   3 |    PX SEND QC (RANDOM)                       | :TQ10000              |   181M|  3287M|   205K  (2)| 00:47:58 |
|   4 |     PX BLOCK ITERATOR                           |                       |   181M|  3287M|   205K  (2)| 00:47:58 |
|   5 |      TABLE ACCESS FULL                         | A                 |   181M|  3287M|   205K  (2)| 00:47:58 |
PLAN_TABLE_OUTPUT
|*  6 |   FILTER                                                    |                       |       |       |            |          |
|*  7 |    TABLE ACCESS BY INDEX ROWID          | B        |   301K|    15M|   528K  (1)| 02:03:24 |
|*  8 |     INDEX RANGE SCAN                              | SYS_C0073404          |    30M|       | 31081   (1)| 00:07:16 |
Thanks in advance

create table new_A as select *.A ,column_in_B from A,B where A.row_id=B.row_id;
drop table A;
rename new_A to A;
No - that can't be right.
You need to access the ROWID of table A; not some column in table A that is named 'row_id'. And that assumes, as PaulHorth asked, that table B DOES have a column named 'row_id' that contains the ROWID values of table A.
Also you only posted the plan for the update statement: post the actual query that plan is based on.
create table emp_rowid as
select 'new_' || e.ename new_ename, e.rowid row_id from emp e
where deptno = 20
update /*+parallel (4) */ emp e
set ename = (select new_ename from emp_rowid er
         where er.row_id = e.rowid)
where rowid in (select row_id from emp_rowid)        
select * from table(dbms_xplan.display_cursor())

Similar Messages

  • Having Millions of Records in table how we can reduce the exicution time

    We have developed report it takes time to  running eighteen hours   background job monthly data because having millions of records in tables and used loops also Could you please help me how can read record million wise as parrlel exicution to reduce time

    Moderator message - Welcome to SCN.
    Please search the forums before asking a question.
    Also, Please read Please read "The Forum Rules of Engagement" before posting!  HOT NEWS!! and How to post code in SCN, and some things NOT to do... and [Asking Good Questions in the Forums to get Good Answers|/people/rob.burbank/blog/2010/05/12/asking-good-questions-in-the-forums-to-get-good-answers] before posting again.
    Thread locked.
    Rob

  • Inserting sequence value in a created column already table having some rows

    i have a table emp whish has already having rows in that table
    now i added one more column to that table with alter command and also i created sequence
    now i want to insert the value in that newly created column with sequencename.nextval??????

    insert into employees values (employees_seq.nextval);
    commit;
    Here employees_seq is the name of the sequence.
    Regards
    Asif Kabir
    17 (17 unresolved)
    -- Mark your answer as correct/helpful
    Edited by: asifkabirdba on Dec 22, 2009 3:39 PM

  • Error when adding columns to table and update sync group schema

    Hi,
    I have an Azure SQL Database that is synced to five lokal SQL Server Express 2012 clients. Today I had to add some columns to the tables, I did this using SMMS and ALTER TABLE on the hub-database.
    Then I disabled auto-sync in the Azure Portal and updated the sync schema.
    The first error I got when clicking on Save-Button was that my goup is not ready for syncing. I assumed that was caused by two sync agents who were offline. So I deleted them from the group and the error was gone. (is this an generall issue that all agents
    must be online to update the schema?)
    But then I got the next error when clicking on Save-Button who tells me SQL Error 207, invalid column name on the new columns I've added. 
    Here's the error in the eventlog:
    id:DbProvider_SqlSyncScopeProvisioning_Error, rId:, sId:cc009538-29a6-4980-8db6-98fe520626b6, agentId:cb734c59-3484-41ed-8002-dec8cf7e21b4,
    agentInstanceId:1aa5a36e-0dfb-4ff1-841a-c298d2e77fe7, syncGroupId:9d439cdd-de14-4e4d-a799-8a7fa518f533, syncGroupMemberId:dd2d6cdf-fdb3-4ff8-8ab5-8e639c35af47, hubDbId:d5c5615a-6f55-484a-8c76-cf335989fa41, tracingId:b5f0eb23-1ade-437b-af33-a1960ebd1c23, databaseId:a9c5ba71-a7b0-4ffe-ab8d-10b6006fc282,
    sqlAzureActivityId:00000000-0000-0000-0000-000000000000, e:'Type=System.Data.SqlClient.SqlException,Message=Ungültiger Spaltenname 'Kunde_Name'.
    Ungültiger Spaltenname 'Rechnung_gestellt'.
    Ungültiger Spaltenname 'Rechnung_bezahlt'.
    Ungültiger Spaltenname 'Kunde_Name'.
    Ungültiger Spaltenname 'Rechnung_gestellt'.
    Ungültiger Spaltenname 'Rechnung_bezahlt'.,Source=.Net SqlClient Data Provider,StackTrace=
      bei System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
       bei System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean
    breakConnection, Action`1 wrapCloseInAction)
       bei System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj,
    Boolean callerHasConnectionLock, Boolean asyncClose)
       bei System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler,
    SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
       bei System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean
    async, Int32 timeout, Boolean asyncWrite)
       bei System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion,
    String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
       bei System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       bei Microsoft.Synchronization.Data.SqlServer.SqlSyncTrackingTableHelper.UpdateTrackingTableWhereColumnsNotNullInBaseTable(SqlConnection
    connection, SqlTransaction transaction, DbSyncColumnDescription[] addedColumns, DbSyncColumnDescription[] modifiedColumns, Int32 tableObjectId, SqlSyncMarkerTableHelper markerHelper)
       bei Microsoft.Synchronization.Data.SqlServer.SqlSyncTableProvisioning.ReApply(SqlTransaction
    trans, SqlSyncProviderAdapterConfiguration oldConfiguration)
       bei Microsoft.Synchronization.Data.SqlServer.SqlSyncScopeProvisioning.ReApplyScope(SqlConnection
    connection)
       bei Microsoft.Synchronization.Data.SqlServer.SqlSyncScopeProvisioning.ReApplyInternal(SqlConnection
    connection)
       bei Microsoft.Synchronization.Data.SqlServer.SqlSyncScopeProvisioning.ReApply(),', eType:'Type=System.Data.SqlClient.SqlException',
    eMessage:'Message=Ungültiger Spaltenname 'Kunde_Name'.
    Ungültiger Spaltenname 'Rechnung_gestellt'.
    Ungültiger Spaltenname 'Rechnung_bezahlt'.
    Ungültiger Spaltenname 'Kunde_Name'.
    Ungültiger Spaltenname 'Rechnung_gestellt'.
    Ungültiger Spaltenname 'Rechnung_bezahlt'.' Error Code: -2146232060 - SqlError Number:207,
    Message: Ungültiger Spaltenname 'Kunde_Name'.. SqlError Number:207, Message: Ungültiger Spaltenname 'Rechnung_gestellt'.. SqlError Number:207, Message: Ungültiger Spaltenname 'Rechnung_bezahlt'.. SqlError
    Number:207, Message: Ungültiger Spaltenname 'Kunde_Name'.. SqlError Number:207, Message: Ungültiger Spaltenname 'Rechnung_gestellt'.. SqlError Number:207, Message: Ungültiger Spaltenname 'Rechnung_bezahlt'..
    , eTypeInner:, eMessageInner:
    Can anyone help here?
    Kind
    regards,
    selmiac

    Hello,
    When you alter the table on hub database, did you specify the new column allow NULLs or have a DEFAULT? The column must allow NULLs or have a DEFAULT for the user to create it in the other tables on the sync group.
    Reference:Add or remove a column in a sync group
    If the issue persists, you may try to delete the sync group and recreate the group.
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • Saving of data in a table having large number of records

    Hi,
    i'm working in forms 6i and database 10g.
    i'm having two tables, stock_head and stock_detail.
    The stock_detail table is having millions of records.
    The stock_detail is having 3 database triggers.
    the saving of data into these tables is very slow even after disabling the triggers.
    can anyone please help me regarding this matter...
    How to improve the performance?
    please help me...

    As always the same thing applies to these type of queries
    - No exact version numbers are provided
    - The problem description is way too vague to resolve the issue
    - The requestor doesn't read documentation
    - The requestor didn't use online resources, and didn't search this forum
    The central question always is
    What is it waiting for
    So you need to run ADDM and/or AWR reports provided you are properly licensed, or statspack when you don't have a license for AWR/ADDM.
    Apart from that no help is possible, as the post didn't contain a problem description other than 'It doesn't work, help'
    Sybrand Bakker
    Senior Oracle DBA

  • Top Link Causes out of memory issue when millions of records need to update

    Hello everyone,
    I am using TopLink 9.0.4 in a batch process. The batch process reads from the temp table(temp table has millions of records one month worth of data which need be updated). The database being used is sqlserver 2005. Below is the snippet of code. It works for 6-7 hours and crashes after that due of out of memory:
    ExpressionBuilder expressionBuilder = new ExpressionBuilder();
    Statement stmt = con.createStatement();
    ResultSet rs = st.executeQuery("Select * from database tablename where field= 'done'");
    while(rs!=null && rs.next()){
    *//where vo is the value object obtained from the rs row by row*     
    if (updateInfo(vo, user,expressionBuilder )){
                   logger.info("updated : "+ rs.getString("col_name"));
                   projCount++;
    rs.close();
    st.close();
    private boolean updateInfo(ProjectVO vo, YNUser tcUser,expressionBuilder ) {
              boolean updated;
              updated = false;
              try {
                   updated = true;
              } catch (Exception e) {
                   logger.warn("update: caused exception, "
                             + e.getMessage());
              return updated;
    Edited by: user8981696 on Jan 14, 2010 1:00 PM

    Thanks for your reply.
    Please find below the answers to you suggestions/concerns:
    You seem to be using raw JDBC to select all of the records in a single result set, not sure if this may be causing a memory issue. You could try paging through the results instead.
    Ans: I have modified the code to get me 1000 records each time and I am getting the ResultSet by using PrepartedStatement instead of regular Statement object.
    What type of caching are you using?
    Ans: No caching is being used. If you have some thoughts on caching please suggest or put some sample code. Again there is no AppServer is being used, its just a regular java process(Batch process) so I dont know how to do caching in a simple java process.
    You may also wish to try the latest 9.0.4 patch release, or try the 10.1.3 version, or the latest EclipseLink 2.0 release.
    Ans: Where can I find the latest patch release 9.0.4?
    Any help/suggestion is really appreciated!

  • How to update a column which has 35 millions of rows?

    Hi everyone
    need help
    I am updating a column which has 35 millions of records. When i start update, it is taking like > 60 mins and its not stoping (finishing).
    I need to null that column A, and update that column A  with the other column B values.
    Thanks
    kumar

    Three common causes for big updates that are slow:
    blocking. You can check whether the UPDATE is waiting on another connection to release locks using sp_who2
    improperly sized log file. A big update may use of a lot of log space. If you log file is too small, and you have auto-grow enabled (which is the default setting), it will grow whenever needed. But this takes a lot of extra time. You can easily see this
    when you view the file size of the log file
    if the column you are updating is indexed, the engine may also you tempdb a lot, so tempdb may also grow a lot, which would take a lot of additional time. This is also easy to check by inspecting tempdb's file size
    Gert-Jan

  • How can I update a particular column in a 7 million record table, where it has many conditions to go.

    I am designing a table, for which I am loading the data into my table from different tables by giving joins. But I have Status column, for which I have about 16 different statuses from different tables, now for each case I have a condition, if it satisfies
    then the particular status will show in status column, in that way I need to write the query as 16 different cases. 
    Now, my question is what is the best way to write these cases for the to satisfy all the conditions and also get the data quickly to the table. As the data we are getting is mostly from big tables about 7 million records. And if we give the logic as case
    it will scan for each case and about 16 times it will scan the table, How can I do this faster? Can anyone help me out

    Here is the code I have written to get the data from temp tables which are taking records from 7 millions table with  filtering records of year 2013. This is taking more than an hour to run. Iam posting the part of code which is running slow, mainly
    the part of Status column.
    SELECT
    z.SYSTEMNAME
    --,Case when ZXC.[Subsystem Name] <> 'NULL' Then zxc.[SubSystem Name]
    --else NULL
    --End AS SubSystemName
    , CASE
    WHEN z.TAX_ID IN
    (SELECT DISTINCT zxc.TIN
    FROM .dbo.SQS_Provider_Tracking zxc
    WHERE zxc.[SubSystem Name] <> 'NULL'
    THEN
    (SELECT DISTINCT [Subsystem Name]
    FROM .dbo.SQS_Provider_Tracking zxc
    WHERE z.TAX_ID = zxc.TIN)
    End As SubSYSTEMNAME
    ,z.PROVIDERNAME
    ,z.STATECODE
    ,z.TAX_ID
    ,z.SRC_PAR_CD
    ,SUM(z.SEQUEST_AMT) Actual_Sequestered_Amt
    , CASE
    WHEN z.SRC_PAR_CD IN ('E','O','S','W')
    THEN 'Nonpar Waiver'
    -- --Is Puerto Rico of Lifesynch
    WHEN z.TAX_ID IN
    (SELECT DISTINCT a.TAX_ID
    FROM .dbo.SQS_NonPar_PR_LS_TINs a
    WHERE a.Bucket <> 'Nonpar'
    THEN
    (SELECT DISTINCT a.Bucket
    FROM .dbo.SQS_NonPar_PR_LS_TINs a
    WHERE a.TAX_ID = z.TAX_ID)
    --**Amendment Mailed**
    WHEN z.TAX_ID IN
    (SELECT DISTINCT b.PROV_TIN
    FROM .dbo.SQS_Mailed_TINs_010614 b WITH (NOLOCK )
    where not exists (select * from dbo.sqs_objector_TINs t where b.PROV_TIN = t.prov_tin))
    and z.Hosp_Ind = 'P'
    THEN
    (SELECT DISTINCT b.Mailing
    FROM .dbo.SQS_Mailed_TINs_010614 b
    WHERE z.TAX_ID = b.PROV_TIN
    -- --**Amendment Mailed Wave 3-5**
    WHEN z.TAX_ID In
    (SELECT DISTINCT
    qz.PROV_TIN
    FROM
    [SQS_Mailed_TINs] qz
    where qz.Mailing = 'Amendment Mailed (3rd Wave)'
    and not exists (select * from dbo.sqs_objector_TINs t where qz.PROV_TIN = t.prov_tin))
    and z.Hosp_Ind = 'P'
    THEN 'Amendment Mailed (3rd Wave)'
    WHEN z.TAX_ID IN
    (SELECT DISTINCT
    qz.PROV_TIN
    FROM
    [SQS_Mailed_TINs] qz
    where qz.Mailing = 'Amendment Mailed (4th Wave)'
    and not exists (select * from dbo.sqs_objector_TINs t where qz.PROV_TIN = t.prov_tin))
    and z.Hosp_Ind = 'P'
    THEN 'Amendment Mailed (4th Wave)'
    WHEN z.TAX_ID IN
    (SELECT DISTINCT
    qz.PROV_TIN
    FROM
    [SQS_Mailed_TINs] qz
    where qz.Mailing = 'Amendment Mailed (5th Wave)'
    and not exists (select * from dbo.sqs_objector_TINs t where qz.PROV_TIN = t.prov_tin))
    and z.Hosp_Ind = 'P'
    THEN 'Amendment Mailed (5th Wave)'
    -- --**Top Objecting Systems**
    WHEN z.SYSTEMNAME IN
    ('ADVENTIST HEALTH SYSTEM','ASCENSION HEALTH ALLIANCE','AULTMAN HEALTH FOUNDATION','BANNER HEALTH SYSTEM')
    THEN 'Top Objecting Systems'
    WHEN z.TAX_ID IN
    (SELECT DISTINCT
    h.TAX_ID
    FROM
    #HIHO_Records h
    INNER JOIN .dbo.SQS_Provider_Tracking obj
    ON h.TAX_ID = obj.TIN
    AND obj.[Objector?] = 'Top Objector'
    WHERE z.TAX_ID = h.TAX_ID
    OR h.SMG_ID IS NOT NULL
    )and z.Hosp_Ind = 'H'
    THEN 'Top Objecting Systems'
    -- --**Other Objecting Hospitals**
    WHEN (z.TAX_ID IN
    (SELECT DISTINCT
    h.TAX_ID
    FROM
    #HIHO_Records h
    INNER JOIN .dbo.SQS_Provider_Tracking obj
    ON h.TAX_ID = obj.TIN
    AND obj.[Objector?] = 'Objector'
    WHERE z.TAX_ID = h.TAX_ID
    OR h.SMG_ID IS NOT NULL
    )and z.Hosp_Ind = 'H')
    THEN 'Other Objecting Hospitals'
    -- --**Objecting Physicians**
    WHEN (z.TAX_ID IN
    (SELECT DISTINCT
    obj.TIN
    FROM .dbo.SQS_Provider_Tracking obj
    WHERE obj.[Objector?] in ('Objector','Top Objector')
    and z.TAX_ID = obj.TIN
    and z.Hosp_Ind = 'P')
    THEN 'Objecting Physicians'
    --****Rejecting Hospitals****
    WHEN (z.TAX_ID IN
    (SELECT DISTINCT
    h.TAX_ID
    FROM
    #HIHO_Records h
    INNER JOIN .dbo.SQS_Provider_Tracking obj
    ON h.TAX_ID = obj.TIN
    AND obj.[Objector?] = 'Rejector'
    WHERE z.TAX_ID = h.TAX_ID
    OR h.SMG_ID IS NOT NULL
    )and z.Hosp_Ind = 'H')
    THEN 'Rejecting Hospitals'
    --****Rejecting Physciains****
    WHEN
    (z.TAX_ID IN
    (SELECT DISTINCT
    obj.TIN
    FROM .dbo.SQS_Provider_Tracking obj
    WHERE z.TAX_ID = obj.TIN
    AND obj.[Objector?] = 'Rejector')
    and z.Hosp_Ind = 'P')
    THEN 'REjecting Physicians'
    ----**********ALL OBJECTORS SHOULD HAVE BEEN BUCKETED AT THIS POINT IN THE QUERY**********
    -- --**Non-Objecting Hospitals**
    WHEN z.TAX_ID IN
    (SELECT DISTINCT
    h.TAX_ID
    FROM
    #HIHO_Records h
    WHERE
    (z.TAX_ID = h.TAX_ID)
    OR h.SMG_ID IS NOT NULL)
    and z.Hosp_Ind = 'H'
    THEN 'Non-Objecting Hospitals'
    -- **Outstanding Contracts for Review**
    WHEN z.TAX_ID IN
    (SELECT DISTINCT
    qz.PROV_TIN
    FROM
    [SQS_Mailed_TINs] qz
    where qz.Mailing = 'Non-Objecting Bilateral Physicians'
    AND z.TAX_ID = qz.PROV_TIN)
    Then 'Non-Objecting Bilateral Physicians'
    When z.TAX_ID in
    (select distinct
    p.TAX_ID
    from dbo.SQS_CoC_Potential_Mail_List p
    where p.amendmentrights <> 'Unilateral'
    AND z.TAX_ID = p.TAX_ID)
    THEN 'Non-Objecting Bilateral Physicians'
    WHEN z.TAX_ID IN
    (SELECT DISTINCT
    qz.PROV_TIN
    FROM
    [SQS_Mailed_TINs] qz
    where qz.Mailing = 'More Research Needed'
    AND qz.PROV_TIN = z.TAX_ID)
    THEN 'More Research Needed'
    WHEN z.TAX_ID IN (SELECT DISTINCT qz.PROV_TIN FROM [SQS_Mailed_TINs] qz where qz.Mailing = 'Objector' AND qz.PROV_TIN = z.TAX_ID)
    THEN 'ERROR'
    else 'Market Review/Preparing to Mail'
    END AS [STATUS Column]
    Please suggest on this

  • Update beans after adding columns to DB tables

    I am trying to use JDeveloper 10G , Studio Edition Version 10.1.3.0.4.3673
    I am having difficulty finding out how to update CMP Entity Beans
    after adding columns to DB tables.
    I have found descriptions of how to do these from four sources.
    None of these methods work.
    They all refer to menu options, buttons or fields that aren't in the JDevb IDE.
    List of options that don't exist :
    "Synchronize with Database"
    "attributes"
    "Add from table"
    "New from Table"
    "Fields Tab"

    What version of EJBs are you using?
    The only option I know of for EJBs will be to generate the bean from the table again, or manually add the field to the EJB.
    The "Synchronize with Database" operation is there for ADF Business Components but not for EJBs.

  • What's the best way to delete 2.4 million of records from table?

    We are having two tables one is production one and another is temp table which data we want to insert into production table. temp table having 2.5 million of records and on the other side production table is having billions of records. the thing which we want to do just simple delete already existed records from production table and then insert the remaining records from temp to production table.
    Can anyone guide what's the best way to do this?
    Thanks,
    Waheed.

    Waheed Azhar wrote:
    production table is live and data is appending in this table on random basis. if i go insert data from temp to prod table a pk voilation exception occured bcoz already a record is exist in prod table which we are going to insert from temp to prod
    If you really just want to insert the records and don't want to update the matching ones and you're already on 10g you could use the "DML error logging" facility of the INSERT command, which would log all failed records but succeeds for the remaining ones.
    You can create a suitable exception table using the DBMS_ERRLOG.CREATE_ERROR_LOG procedure and then use the "LOG ERRORS INTO" clause of the INSERT command. Note that you can't use the "direct-path" insert mode (APPEND hint) if you expect to encounter UNIQUE CONSTRAINT violations, because this can't be logged and cause the direct-path insert to fail. Since this is a "live" table you probably don't want to use the direct-path insert anyway.
    See the manuals for more information: http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_9014.htm#BGBEIACB
    Sample taken from 10g manuals:
    CREATE TABLE raises (emp_id NUMBER, sal NUMBER
       CONSTRAINT check_sal CHECK(sal > 8000));
    EXECUTE DBMS_ERRLOG.CREATE_ERROR_LOG('raises', 'errlog');
    INSERT INTO raises
       SELECT employee_id, salary*1.1 FROM employees
       WHERE commission_pct > .2
       LOG ERRORS INTO errlog ('my_bad') REJECT LIMIT 10;
    SELECT ORA_ERR_MESG$, ORA_ERR_TAG$, emp_id, sal FROM errlog;
    ORA_ERR_MESG$               ORA_ERR_TAG$         EMP_ID SAL
    ORA-02290: check constraint my_bad               161    7700
    (HR.SYS_C004266) violatedIf the number of rows in the temp table is not too large and you have a suitable index on the large table for the lookup you could also try to use a NOT EXISTS clause in the insert command:
    INSERT INTO <large_table>
    SELECT ...
    FROM TEMP A
    WHERE NOT EXISTS (
    SELECT NULL
    FROM <large_table> B
    WHERE B.<lookup> = A.<key>
    );But you need to check the execution plan, because a hash join using a full table scan on the <large_table> is probably something you want to avoid.
    Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Adding a cloumn in a partitioned table having pctfree 0

    Hi,
    I have a partitioned fact table with millions of rows and pctfree 0. Now I want to add a new column in this table (without any default value in the new column, so new column is a null). How will it affect (because of pctfree 0) the performance of old data retrieval for reports.
    Thanks,
    Ravi

    Alter Table <tab_name> add <column_name> datatype;
    The column will added @ last
    Edited by: LPS on Jul 13, 2011 11:16 PM

  • How to get the rows from a table having some column has any letter

    Hi All,
    suppose i have a table having columns id(number), code(varchar).
    code has alphanumeric characters (ex. ABC123, 67B56 etc).
    some codes are only numbers (2344, 7898 etc).
    how can i get the rows which have alphabets in the code.
    ex:
    id code
    1 AB45
    2 456
    3 890
    4 67B7
    how can i write a query such that it should give me the ids 1 and 4 (as they have alphabets in code)
    thanks in advance to all

    Thanks to one and all.
    i am gettig my required output.
    But i have a doubt in the operator.
    If i add or remove '[]' in the operator, i am getting different ouputs.
    There is a count difference in the result of the operators used.
    REGEXP_LIKE(<column>,'[[:lower:]]')
    REGEXP_LIKE(<column>,'[[[:lower:]]]')
    REGEXP_LIKE(<column>,'[:lower:]')
    Can anybody please explain what is the difference in using '[]', in the operator?
    What is the correct syntax, whether i have to use two '[]'s or one '[]'.
    Also, can i use REGEXP_LIKE() in oracle 8i version.( I am unable to use the operator in 8i)?
    Any query to get the required output in 8i version?
    Thanks in advance to all.

  • SSAS Tabular - Adding Column to a table gives error "Object reference not set to instance of object"

    If I make changes to a table in SSAS Tabular Visual Studio, the newly added column gives error as "Object
    reference not set to instance of object"

    Hi VikasJain13,
    According to your description, you get the "Object reference not set to instance of object" error when adding columns in Tabular. Right?
    Generally, it throws this error when the internal code is accessing the property of an empty object. As you mentioned it happens when you make changes on a table, mostly it means that table is already a empty object. Please re-process your tabular to see
    if this table is still existing. 
    If you have any question, please feel free to ask.
    Simon Hou
    TechNet Community Support

  • Need help for SQL SELECT query to fetch XML records from Oracle tables having CLOB field

    Hello,
    I have a scenario wherein i need to fetch records from several oracle tables having CLOB fields(which is holding XML) and then merge them logically to form a hierarchy XML. All these tables are related with PK-FK relationship. This XML hierarchy is having 'OP' as top-most root node and ‘DE’ as it’s bottom-most node with One-To-Many relationship. Hence, Each OP can have multiple GM, Each GM can have multiple DM and so on.
    Table structures are mentioned below:
    OP:
    Name                             Null                    Type        
    OP_NBR                    NOT NULL      NUMBER(4)    (Primary Key)
    OP_DESC                                        VARCHAR2(50)
    OP_PAYLOD_XML                           CLOB       
    GM:
    Name                          Null                   Type        
    GM_NBR                  NOT NULL       NUMBER(4)    (Primary Key)
    GM_DESC                                       VARCHAR2(40)
    OP_NBR               NOT NULL          NUMBER(4)    (Foreign Key)
    GM_PAYLOD_XML                          CLOB   
    DM:
    Name                          Null                    Type        
    DM_NBR                  NOT NULL         NUMBER(4)    (Primary Key)
    DM_DESC                                         VARCHAR2(40)
    GM_NBR                  NOT NULL         NUMBER(4)    (Foreign Key)
    DM_PAYLOD_XML                            CLOB       
    DE:
    Name                          Null                    Type        
    DE_NBR                     NOT NULL           NUMBER(4)    (Primary Key)
    DE_DESC                   NOT NULL           VARCHAR2(40)
    DM_NBR                    NOT NULL           NUMBER(4)    (Foreign Key)
    DE_PAYLOD_XML                                CLOB    
    +++++++++++++++++++++++++++++++++++++++++++++++++++++
    SELECT
    j.op_nbr||'||'||j.op_desc||'||'||j.op_paylod_xml AS op_paylod_xml,
    i.gm_nbr||'||'||i.gm_desc||'||'||i.gm_paylod_xml AS gm_paylod_xml,
    h.dm_nbr||'||'||h.dm_desc||'||'||h.dm_paylod_xml AS dm_paylod_xml,
    g.de_nbr||'||'||g.de_desc||'||'||g.de_paylod_xml AS de_paylod_xml,
    FROM
    DE g, DM h, GM i, OP j
    WHERE
    h.dm_nbr = g.dm_nbr(+) and
    i.gm_nbr = h.gm_nbr(+) and
    j.op_nbr = i.op_nbr(+)
    +++++++++++++++++++++++++++++++++++++++++++++++++++++
    I am using above SQL select statement for fetching the XML records and this gives me all related xmls for each entity in a single record(OP, GM, DM. DE). Output of this SQL query is as below:
    Current O/P:
    <resultSet>
         <Record1>
              <OP_PAYLOD_XML1>
              <GM_PAYLOD_XML1>
              <DM_PAYLOD_XML1>
              <DE_PAYLOD_XML1>
         </Record1>
         <Record2>
              <OP_PAYLOD_XML2>
              <GM_PAYLOD_XML2>
              <DM_PAYLOD_XML2>
              <DE_PAYLOD_XML2>
         </Record2>
         <RecordN>
              <OP_PAYLOD_XMLN>
              <GM_PAYLOD_XMLN>
              <DM_PAYLOD_XMLN>
              <DE_PAYLOD_XMLN>
         </RecordN>
    </resultSet>
    Now i want to change my SQL query so that i get following output structure:
    <resultSet>
         <Record>
              <OP_PAYLOD_XML1>
              <GM_PAYLOD_XML1>
              <GM_PAYLOD_XML2> .......
              <GM_PAYLOD_XMLN>
              <DM_PAYLOD_XML1>
              <DM_PAYLOD_XML2> .......
              <DM_PAYLOD_XMLN>
              <DE_PAYLOD_XML1>
              <DE_PAYLOD_XML2> .......
              <DE_PAYLOD_XMLN>
         </Record>
         <Record>
              <OP_PAYLOD_XML2>
              <GM_PAYLOD_XML1'>
              <GM_PAYLOD_XML2'> .......
              <GM_PAYLOD_XMLN'>
              <DM_PAYLOD_XML1'>
              <DM_PAYLOD_XML2'> .......
              <DM_PAYLOD_XMLN'>
              <DE_PAYLOD_XML1'>
              <DE_PAYLOD_XML2'> .......
              <DE_PAYLOD_XMLN'>
         </Record>
    <resultSet>
    Appreciate your help in this regard!

    Hi,
    A few questions :
    How's your first query supposed to give you an XML output like you show ?
    Is there something you're not telling us?
    What's the content of, for example, <OP_PAYLOD_XML1> ?
    I don't think it's a good idea to embed the node level in the tag name, it would make much sense to expose that as an attribute.
    What's the db version BTW?

  • Adding a new column in table control of MIGO

    Hello,
    I want to add a column in the itemlist table control (screen 200) of MIGO to show the batch's case qty.  I used an example in BAdI MB_MIGO_BADI to add a new header tabstrip but the itemlist table is still pointing to MIGO's table control screen 200 ( used in subscreen SUB_ITEMLIST ).   I want to show my table control which has the added column instead.  
    Does anyone have any ideas how to do this ?
    Thanks.
    TTran

    Hi....
    1. Goto that screen layout and make it change mode.
    2. Follow the menu path -> goto-> secondary window-> dictionary/ program fields
    3. select the reuired field
    4. drag that into your table control , cretes new column
    5. Also capture icon in the left side i.e. T for text make that in header area of new field.
    6. Double click on this , give some name.
    7. Save check activate
    Thanks,
    Naveen.I

Maybe you are looking for

  • OAM 11g Webgate 10g customized SSO logout page

    As stated in the title, I am using OAM 11g and Webgate 10g. I am trying to create a customized SSO logout page but am confused on a few parts. First off, in http://docs.oracle.com/cd/E17904_01/doc.1111/e15478/logout.htm#CHDHFGJC , it states the follo

  • Adobe Story not compatible with Google Chrome. Why?

    Google Chrome is my preferred web browser, but, alas, I realized that Adobe Story won't open in Chrome. So I'm now having to use two different browsers (Firefox and Chrome), one for general surfing the web and another just to use Story. Is there a sp

  • Cannot open old DV files Created in older versions of PP

    I started a project on one machine using CS3. I captured all of the footage using CS3. The footage was regular DV footage captured direct from a DV camcorder, no special codecs or anything. Three are not even any effects of any kind on any clip. its

  • Manual clearing f-03/f-32/f-44

    Dear all, What is the purpose of manual clearing f-03/f-32/f-44? Please explain me with an example. I will award maximum points. Thanks in advance, Regards, Ar

  • SRM MDM Catalog -Service Item

    Hi guys, We got a standard SRM MDM catalog implementation with OCI configuration handling all the item mapping. I run into issues when I flag an item as a "Service Item" in MDM by using the default provided flag MDMSRM_SERVICE_ITEM. This flag, when s