Insert the new value of a specific column

I have a table:
CREATE TABLE SEG(
  COD VARCHAR2(4)
  EJER NUMBER(4,0)
  EXPE NUMBER(7,0)
  NIF VARCHAR2(9)
  DFECHA DATE);
Add a column 'NUMBER ':
  ALTER TABLE SEG ADD NUM NUMBER(15) NULL;
This value for this new column is a column "new_valor" from the following selection:
SELECT COD,
     EJER,
     EXPE,
     NIF,
     row_number() over 
      (partition by COD,EJER,EXPE,NIF order by 1,2,3,4) 
      AS new_valor
FROM SEG;
But... How to put this value in UPDATE?
  UPDATE SEG SET NUM= ????????
    WHERE (COD,EJER,EXPE,NIF) =
      (SELECT COD,
             EJER,
             EXPE,
             NIF,
             row_number() over 
              (partition by COD,EJER,EXPE,NIF order by 1,2,3,4) 
              AS new_valor
        FROM SEG);
Or another way...

Published by: jortri on ene / 09/2009 11:47

Check out this link.

http://download.Oracle.com/docs/CD/B19306_01/server.102/b14200/statements_9016.htm#SQLRF01606

Also check this

http://asktom.Oracle.com/pls/asktom/f?p=100:11:0:P11_QUESTION_ID:6407993912330

http://asktom.Oracle.com/pls/asktom/f?p=100:11:0:P11_QUESTION_ID:5318183934935

Concerning

REDA

Tags: Database

Similar Questions

  • Insert the new value in existing csv file

    Hello

    I have a CSV file that I created using a totalizer. now I need to insert this string values by searching the line

    For example:-first column is date so I'll look for the date and insert comment for her

    attached the CSV file


  • Is there a way to get the new value assigned to a column of series (DG4IFMX)

    Hi people,

    I need to insert records into a table whose primary key is a column of series (even as a trigger on a primary key in Oracle). I have been informed that the way to trigger the next value is to insert a zero in the column, which is fine. The problem is, that I need to know what the next value that has been assigned, and there is not enough time between the transaction to do a 'select max (column_name)', for example. Is there something (maybe a function) that responds to this need, and I don't know about it?

    Thanks, any idea would be appreciated.

    -Adam vonNieda

    The gateway offers the PASSTHROUGH - described in more detailed manual - package which allows you to send anything to the foreign database without being touched by Oracle.
    Depending on your function, you can use the DBMS_HS_PASSTHROUGH. The EXECUTE_IMMEDIATE package and if you need to retrieve something that you could use:
    dbms_hs_passthrough. Parse
    DBMS_Hs_Passthrough.fetch_row
    dbms_hs_passthrough.get_Value

  • Get the old value and the new value based on the date

    Hello

    I have a table called list created below with the rest of the insert statements.

    CREATE TABLE ROSTER
    (
    NUMBER OF ROSTER_EMPLOYEE_DEF_ID
    NUMBER OF EMPLOYE_ID
    NUMBER OF DEFINITION_REGION_CODE
    NUMBER OF DEFINITION_DISTRICT_CODE
    NUMBER OF DEFINITION_TERRITORY_CODE
    START_DATE DATE,
    END_DATE DATE
    )



    INSERT IN THE LIST
    (ROSTER_EMPLOYEE_DEF_ID, EMPLOYE_ID, DEFINITION_REGION_CODE, DEFINITION_DISTRICT_CODE, DEFINITION_TERRITORY_CODE, START_DATE, END_DATE)
    VALUES
    (1,299,222,333,444, 'JUNE 1, 2011', 30 JUNE 2011 "")

    INSERT IN THE LIST
    (ROSTER_EMPLOYEE_DEF_ID, EMPLOYE_ID, DEFINITION_REGION_CODE, DEFINITION_DISTRICT_CODE, DEFINITION_TERRITORY_CODE, START_DATE, END_DATE)
    VALUES
    (2,299,223,334,445, "1 JULY 2011', JULY 20, 2011" "")

    INSERT IN THE LIST
    (ROSTER_EMPLOYEE_DEF_ID, EMPLOYE_ID, DEFINITION_REGION_CODE, DEFINITION_DISTRICT_CODE, DEFINITION_TERRITORY_CODE, START_DATE, END_DATE)
    VALUES
    (3,299,224,335,446, 'AUGUST 1, 2011', AUGUST 30, 2011 "")

    INSERT IN THE LIST
    (ROSTER_EMPLOYEE_DEF_ID, EMPLOYE_ID, DEFINITION_REGION_CODE, DEFINITION_DISTRICT_CODE, DEFINITION_TERRITORY_CODE, START_DATE, END_DATE)
    VALUES
    (4,300,500,400,300, 'JUNE 1, 2011', JUNE 20, 2011 "")

    INSERT IN THE LIST
    (ROSTER_EMPLOYEE_DEF_ID, EMPLOYE_ID, DEFINITION_REGION_CODE, DEFINITION_DISTRICT_CODE, DEFINITION_TERRITORY_CODE, START_DATE, END_DATE)
    VALUES
    (5,300,501,401,301, "1 JULY 2011', JULY 20, 2011" "")


    In the table above we have columns like

    EMPLOYE_ID, DEFINITION_REGION_CODE, DEFINITION_DISTRICT_CODE, DEFINITION_TERRITORY_CODE, START_DATE, END_DATE

    The result I'm looking for the table above is based on the employe_id OF start_date AND end_date

    I need to get the OLD_DEFINITION_REGION_CODE and the NEW_DEFINITION_CODE
    Similarly, OLD_DEFINITION_REGION_CODE and the NEW_DEFINITION_REGION_CODE
    and OLD_DEFINITION_TERRITORY_CODE and the NEW_DEFINITION_TERRITORY_CODE


    I need to get a row of data for each employee saying old value and the new value

    for the employee 299 there are 3 records he puts the new record which is the latest date is to say beginning August 1, 2011 and end date of recordings old 30 August 2011
    beginning July 1, 2011 and July 20, 2011


    For the data in the table above, I need to get the data as below


    EMPLOYE_ID OLD_DEFINITION_REGION_CODE NEW_DEFINITION_CODE OLD_DEFINITION_REGION_CODE NEW_DEFINITION_REGION_CODE START_DATE END_DATE
    299 223 224 334 335 20 JULY 11 30 AUG 11
    300 500 501 400 401 20 JUNE 11 JULY 20, 11


    Please suggest me to get the result above, based on the data. Please let me know if my messages are not clear


    Thank you
    Sudhir
    SELECT  EMPLOYEE_ID,
            OLD_DEFINITION_REGION_CODE,
            NEW_DEFINITION_REGION_CODE,
            OLD_DEFINITION_DISTRICT_CODE,
            NEW_DEFINITION_DISTRICT_CODE,
            OLD_DEFINITION_TERRITORY_CODE,
            NEW_DEFINITION_TERRITORY_CODE,
            START_DATE,
            END_DATE
      FROM  (
             SELECT  EMPLOYEE_ID,
                     ROW_NUMBER() OVER(PARTITION BY EMPLOYEE_ID ORDER BY START_DATE DESC) RN,
                     LAG(DEFINITION_REGION_CODE) OVER(PARTITION BY EMPLOYEE_ID ORDER BY START_DATE) OLD_DEFINITION_REGION_CODE,
                     DEFINITION_REGION_CODE NEW_DEFINITION_REGION_CODE,
                     LAG(DEFINITION_DISTRICT_CODE) OVER(PARTITION BY EMPLOYEE_ID ORDER BY START_DATE) OLD_DEFINITION_DISTRICT_CODE,
                     DEFINITION_DISTRICT_CODE NEW_DEFINITION_DISTRICT_CODE,
                     LAG(DEFINITION_TERRITORY_CODE) OVER(PARTITION BY EMPLOYEE_ID ORDER BY START_DATE) OLD_DEFINITION_TERRITORY_CODE,
                     DEFINITION_TERRITORY_CODE NEW_DEFINITION_TERRITORY_CODE,
                     LAG(END_DATE) OVER(PARTITION BY EMPLOYEE_ID ORDER BY START_DATE) START_DATE,
                     END_DATE
               FROM  ROSTER
            )
      WHERE RN = 1
    /
    
    EMPLOYEE_ID OLD_DEFINITION_REGION_CODE NEW_DEFINITION_REGION_CODE OLD_DEFINITION_DISTRICT_CODE NEW_DEFINITION_DISTRICT_CODE OLD_DEFINITION_TERRITORY_CODE NEW_DEFINITION_TERRITORY_CODE START_DAT END_DATE
    ----------- -------------------------- -------------------------- ---------------------------- ---------------------------- ----------------------------- ----------------------------- --------- ---------
            299                        223                        224                          334                          335                           445                           446 20-JUL-11 30-AUG-11
            300                        500                        501                          400                          401                           300                           301 20-JUN-11 20-JUL-11
    
    SQL>  
    

    SY.

  • dialog box closed = > refresh LOV = > set the new value

    Hello

    I'm really struggling with the following problem. I want my users to pick up existing customers or create a new if it does not exist. So I have a form (P1), a form is LOV with existing customers and a "Create new customer" button next to the LOV that calls the form of the modal dialog box (P2), where the new customer can be added.

    In the P2 process customer's line is an option to return an item, so I return it to P2_CUSTOMER_ID (which is my primary key element). On P1, I created the dynamic action:

    Event: Dialog closed

    Selection type: button

    Button: AddCompany

    and there are 2 real actions.

    (1) item discount P1_CUSTOMERS_LOV

    (2) set

    Type: Dialog box return

    RMA: P2_CUSTOMER_ID

    Affected items = > product (s): P1_CUSTOMERS_LOV

    LOV customers is refreshed correctly but the value is not set. What is even more surprising, it's that if I "insert" another action between these two (run code alert javascript ("added customer");), the new value is set correctly as planned.

    I really have no idea of what Miss me, and any help would be highly appreciated.

    Kind regards

    Pavel

    Pavel,

    I could make it work with a Select list. See once more your example. There is a dynamic onload action using

    $("#P2_CUSTOMER_ID").bind ("apexafterrefresh", function() {}

    $ ('#P2_CUSTOMER_ID') .val ($ (' #P2_CUSTOMER_ID_H ') .val ());

    });

    then, who is only triggered if the refresh of the selection list is completed.

    Denes Kubicek

  • How to compare the new values with the old values in triggers.

    Dear all,

    Please tell me how to compare the new values with the old values in triggers.

    Hi, the employee example is in the document. You'd better read yourself.

    CREATE OR REPLACE TRIGGER Print_salary_changes
      BEFORE DELETE OR INSERT OR UPDATE ON Emp_tab
      FOR EACH ROW
    WHEN (new.Empno > 0)
    DECLARE
        sal_diff number;
    BEGIN
        sal_diff  := :new.sal  - :old.sal;
        dbms_output.put('Old salary: ' || :old.sal);
        dbms_output.put('  New salary: ' || :new.sal);
        dbms_output.put_line('  Difference ' || sal_diff);
    END;
    /
    
  • calculated formula database field trying to insert the null value

    Hello

    I have 3 elements of database text amount, rate and result.
    I enter both values (quantity and frequency), and the property using formula 'result' Gets the computed value.
    On the screen all the values are displayed correctly but when trying to save my information text field 'result' tent to insert the null value.

    Any suggestions?

    Forms 11g

    Thanks in advance

    794018 wrote:
    Hello

    I have 3 elements of database text amount, rate and result.
    I enter both values (quantity and frequency), and the property using formula 'result' Gets the computed value.
    On the screen all the values are displayed correctly but when trying to save my information text field 'result' tent to insert the null value.

    Point formula should not be issue of database. And insert the value in the result column in the database is not good idea.
    Then, if you want to save it. create the database result item and write trigger (When-validate-point) on amount and filed rates and the trigger code, write

    :result:=:amount*:rate;
    

    To display the result on the form, create the database no item and change the formula property and write the formula.

    Hope this will help you

    If someone useful or appropriate, please mark accordingly.

  • After changing the default threshlod in the user interface, where it stores the new value?

    After I changed the value of the threshold warning/cirtical metric, I noticed there was a 'TARGET_TYPE' _ 'targetname '. XML generated in forlder $AGENT_HOME/sysman/emd/collection. It assumes that the registered here threshold has priority over that of collection.xml in $AGENT_HOME/sysman/admin/default_collection, right? I'm very curious, is if the new threshold is also recorded in some tables, the agent generates the 'TARGET_TYPE' _ 'targetname '. XML after reading the new value? If it is, could someone offer me the East?

    Thanks in advance!


    Thank you
    Satine

    The default collection file supplied with the plug-in is the basis of how the collection for the target type agent. If the user makes changes through the user interface, the agent record in a specific collection of target instance file that selectively replaces the default file in the collection.

    Data collection should be TARGET_METRIC_COLLECTIONS view of $ MGMT.

  • How to complete the implementation of process after inserting the new sim card to unlock the phone

    Try to unlock the phone more 6s with ATT, but do not know how to perform the implementation of process after inserting the new sim card. I got the unlock code confirmed att.

    After the unlock code is confirmed, you will have to restore the unit to the factory via iTunes settings.  He must inform you that the device is unlocked, THEN you change sim cards.

  • How to insert the new line char in sticky c# code?

    Hi all

    I paste the code complete c# on a line of string as follows.

    int _intUserID = 0; string _strUserName = string. Empty; string _strEmployeeID = string.empty;
     
    c# VS2005 .cs file code should stick as follows.

    int _intUserID = 0;
    String _strUserName = string. Empty;
    String _strEmployeeID = string. Empty;

    So how do you achieve this. by inserting the new line char in c#?

    Hi Murthy,

    Thanks for posting your query in Microsoft Community.

    I understand that you have problems with the code in Visual studio.

    The question you posted corresponds to the coding software, it would be better suited to the MSDN Community.

    Please visit the link below to find a community that will provide the support you want.

    http://social.msdn.Microsoft.com/forums/en-us/category/VisualStudio

    Hope it will be useful. If you still have questions, please reply and we will be happy to help you.

  • Refresh of Page partial update of form before the data control returns the new value

    Hello

    I have a set of paintings of master detail based on a single data source (Session Bean encapsulating a web service call). The high-level table (t1) shows data of opportunity, as the low level (t2) poster contacts for a special occasion. When the opportunity is selected in t1, the contacts associated with this opportunity appear in t2. These tables of work as you wish.

    I have a read only form (form of the Panel layout) based on a different data control (supported by a Session Bean that calls a LinkedIn API and a table of database using EJB3 entities). LinkedIn Session Bean method takes a parameter which I get from the current row in t2. (#{bindings.relatedContact.currentRow.dataProvider.id}) I put the PartialTriggers as 't2' on the form.

    When the page is loaded for the first time, the first line (line A) from table t2 is selected and the display shows the data associated with this line. If I select another line (line B), the Session Bean is called with the value of the id of the newly selected row, but the display will show the associated data from line A. Thereafter, whenever I select a row in t2, bean is called with the new value, but the form displays the data from the selected line previously.

    I guess what happens is that the form is refreshed (using stale data in the data control), and then the call to the session bean is made. I checked using thread and print statements. Sleep() in the bean.

    Is this a correct behavior and how can I make sure that the call to the bean occurs before the form is updated?

    I use JDeveloper version 11.1.2.2.0

    Thank you
    Michael

    Hello

    as answered on StackOverflow, the trick is to set the refresh option on the iterator (s) to the second access WS (table 2) of PageDef on ifNeeded. The default setting is delayed, which in your case is not optimal because refresh occurs during rendering response, which is too late for the access of WS. Try "ifNeeded.

    Frank

  • Corrupt code. Insert the new copy.

    When viewing in ie6,
    All pages on my site started giving an almost empty screen (background image still shows) and a simple error of 1 line:

    Corrupt code. Insert the new copy.

    Works fine in firefox 2.0, but ive not tested in any other browser.
    I removed a meter js code, which has eliminated the error, but now ago now content showing on my page! -NOTHING!
    just the background. Ive posted in DW8, no errors, but the w3c tells me there are a lot of mistakes - mainly showing my model as an incorrect comment syntax, I think.

    Please help, all my pages are empty, and as much as I hate IE, most of my viewers use it...

    page is here

    Nevermind - found a comment not closed...
    Thanks anyway!

  • get the new value to select a radio station by ValueChangeListener Bean

    ADF / JDeveloper11g

    Hi Experts,

    Please help what I'm working on one Radio select and populated with a value of VO. I need to get the new value selected by ValueChangeListener Bean. the code as follows. Copy the following code I am old value, but I need to develop some new and current.

    Please help, its urgency.
      public void SlRadio(ValueChangeEvent valueChangeEvent) {
        getBranch();
      }
      public void getBranch() {
        // Add event code here...
    
        DCBindingContainer dcBindings =
          (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
    
        // Get a attribute value of the current row of iterator
        DCIteratorBinding iterBind =
          (DCIteratorBinding)dcBindings.get("VOUserBranchList1Iterator");
        String vRtno = (String)iterBind.getCurrentRow().getAttribute("RtNo");
    
        setRtno(vRtno);
        System.out.println("=========Rtng========" + Rtno);
      }
    Thank you.
    Zed
    ======

    Hi Zaza,

    As you are able to get the index of the current selected option button, try upward with the selection of the value of the view object using the index you have found as

    If (valueChangeEvent.getNewValue ()! = null)
    {
    selectIndex = int ((Integer) valueChangeEvent.getNewValue ()) .intValue ();
    Line selectedRow = AMImpl.getVO1 () .getRowAtRangeIndex (selectIndex);
    If (selectedRow! = null)
    {
    selectValue = (String) selectedRow.getAttribute ("RtNo");
    }
    }

    where AMImpl is the object of the application module class.

    Kind regards
    Vikram

  • need to update the value of the column automatically (exists and the new value)

    Hello

    (1) I Segment1, Segment2, Segment3, Segment4, item_status (new column modified in the Temp table)

    Must update the form OFA and the DB Temp table item_status value in the column when I click APPLY to SAVE the Inserted records in the DB table and form and must register the mtl_system_items_b Segment1, Segment2, Segment3, Segment4 in which the condition

    Note: need to update automatically item_status for existing and new inserted records in the Table and the form

     Serializable[] param = {Segment1, Segment2, Segment3, Segment4
                       };
                       am.invokeMethod("InsertRecord", param);
                       row.setAttribute("SelectFlag", "N");
    

    Thank you

    Renon,

    When you write code, try to understand what makes each line. (If you don't understand all the lines, feel free to ask)

    row.setAttribute ("ItemStatus", row.getAttribute ("ItemStatus"));

    What do you think that the above line done? You try to get the value of the attribute and trying to put the same value. How is it, that will have an impact?

    You need to do 2 things.

    1. change the insertRecord method and the State of return of this method.

    Change the definition of the function:

    public String InsertRecord (String itemstyle, String itemcust, String itemsize, String itemcolor, String ordrno,

    String desc)

    Add a return statement at the end after validation.

    TR.Commit ();

    return the situation;

    }

    2 accept that status in CO and set the value to the attribute details VO.

    String status = (String)am.invokeMethod ("InsertRecord", param);

    row.setAttribute ("ItemStatus",status);

    I hope this helps.

    See you soon

    AJ

  • Dynamically partition a table based on different values of a specific column: possible?

    I'll start by explaining my problem, so that you can have a global vision of the problem and perhaps suggest another solution. Problem: I have 2 tables with millions of records. Records are added daily, and so each row in each table has a column of "insertion_date".

    C1 C2 ... C10 insertion_date (type date, ofc)
    

    lines are cleaned according to the insertion_date parameter. This can happen in two ways:

    1 - whenever an application error appears. In this case delete is based on a single day and would be like:

    delete from T1 where insertion_date=##;
    

    in other words remove us the lines added and then restart the program (business logic, can't change it)

    2. every two weeks the data associated with these two weeks are deleted because will be most used:

    delete from T1 where insertion_date between ## and ##; (a two weeks period here)   
    

    Delete is currently very slow: it takes abot 8 minutes just to remove approximately 5 M of records (with the same insertion_date), I can't even imagine the time required to delete records more.

    So, here's my idea!

    I would partition my DB according to the value of insertion_date.

    To remove case 1 I would simply delete the partion associated with this insertion date, to remove scores of cases 2 associates at that interval.

    For the needs of my application at most 15 were leaving are present each time (maybe 20 if I want to keep last at least 5 days of data), so the documented limit of 64000 partitions is not a problem.

    Real problem is that I do not know insertion_date values in advance, so my question: is it possible to automatically create a new partition every time presents itself a new value of insertion_date?

    And please correct me if I'm wrong, if I accomplish partitioning that I wouldn't need to edit above right queries? I know just the faster removal time am I correct?

    No - it isn't bog standard range partitioning partitioning interval

    But perhaps you're citing 9i documentation for a reason?

    It is a feature of 11g... then only about 10 years.

    create table t1
    (col1  date)
    partition by range (col1) interval (numtodsinterval(1,'DAY'))
    (partition po values less than (to_date('01-01-2015','DD-MM-YYYY')));
    
    table T1 created.
    
    select table_name, partition_name, high_value from user_tab_partitions where table_name = 'T1';
    
    TABLE_NAME                     PARTITION_NAME                 HIGH_VALUE
    ------------------------------ ------------------------------ --------------------------------------------------------------------------------
    T1                             PO                             TO_DATE(' 2015-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA...'
    
    insert into t1
    select trunc(sysdate,'MM')+rownum-1
    from   dual
    connect by  rownum <= 10;
    
    select table_name, partition_name, high_value from user_tab_partitions where table_name = 'T1';
    
    TABLE_NAME                     PARTITION_NAME                 HIGH_VALUE
    ------------------------------ ------------------------------ --------------------------------------------------------------------------------
    T1                             PO                             TO_DATE(' 2015-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA...'
    T1                             SYS_P450383                    TO_DATE(' 2015-07-02 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA...'
    T1                             SYS_P450384                    TO_DATE(' 2015-07-03 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450385                    TO_DATE(' 2015-07-04 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450386                    TO_DATE(' 2015-07-05 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450387                    TO_DATE(' 2015-07-06 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450388                    TO_DATE(' 2015-07-07 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450389                    TO_DATE(' 2015-07-08 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450390                    TO_DATE(' 2015-07-09 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450391                    TO_DATE(' 2015-07-10 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    T1                             SYS_P450392                    TO_DATE(' 2015-07-11 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA ...'
    

Maybe you are looking for