Update query help

Hello


Hello
Can be simple, but I'm still learning...
I want to update the value column for table1 based on the table2 by using the SQL query.
TABLE1               TABLE2     
Name        Value     Name       Value
A                 A       10
B                 B       20
C                 C       30
B                        
B                        
C                             
A                             
B     
Thank you
Killian

Hey Killian,

You can use the joint related query to update the value of table1 based on the table2

# If several passenger/PNR are in table2 then update table1 will fail because of multiple returned records
# When no record is found in table2, then will have the value NULL

UPDATE TABLE1 t1
SET t1.value = ( SELECT t2.value
                 FROM TABLE2 t2
                 WHERE t1.name = t2.name
                 ) 

{code}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                

Tags: Database

Similar Questions

  • The UPDATE query help

    I'm on 10G.

    Something is weird. Each customer_id to table X is from the subquery. Basically by train to fill the column of SUSPICION in X to a value of H when there are name/store is from the subquery using the customer_id.

    When I run just the subquery returns 287 matches (and all these 287 X is), but when I try to UPDATE X only update the 260 H lines, but should 287? 27 never update, why? The customer_id are distinct or not NULL values.

    What I am doing wrong?

    Like I said I have selected everything from (subquery), I pasted in Excel. I chose all the customer_ids of X and when I do a VLOOKUP, everything matches, but the query updates only 260 and 287 not? :- )


    UPDATE PROSPECTS_FEB_TEST X
    SET X.HINT = 'H' WHERE X.customer_id IN

    (SELECT a.customer_id
    PROSPECTS OF A, B CONNECTED
    WHERE B.LAST_NAME = A.NAME_LAST
    AND B.FIRST_NAME = A.NAME_FIRST
    AND B.STORE = A.STORE);

    What you get from this?

    SELECT COUNT(DISTINCT a.customer_id)
    FROM prospects a, connected b
    WHERE b.last_name = a.name_last and
          b.first_name = a.name_first and
          b.store = a.store
    

    Is customer_id a numeric field or a varchar2? If it's a varchar2, could their space having in one of the other tables?

    John

  • Update query not in AND not exists

    The following update query hangs

    {code}

    Update EMP

    define the EMP. SAL_FLAG = 1

    EMP. SAL_EFFECTIVE_DATE = to_date ('20140101', 'YYYYMMDD')

    If EMP.ID not in (SELECT ID

    of the Department

    When TREATED = 'Y '.

    )

    AND EMP. SAL_FLAG = 0

    AND EMP. SAL_EFFECTIVE_DATE < = to_date ('20140101', 'YYYYMMDD')

    {code:}

    Out of the PLAN is

    ---------------------------------------------------------------------------------------------------------------

    | ID | Operation | Name                     | Lines | Bytes | Cost |    TQ | IN-OUT | PQ Distrib.

    ---------------------------------------------------------------------------------------------------------------

    |   0 | SELECT STATEMENT |                          | 13700 |   254K |    22 M |        |      |            |

    |*  1 |  FILTER |                          |       |       |       |        |      |            |

    |   2.   COORDINATOR OF PX |                          |       |       |       |        |      |            |

    |   3.    PX SEND QC (RANDOM). : TQ20000 | 13700 |   254K |  1995 |  Q2, 00 | P > S | QC (RAND) |

    |   4.     ITERATOR BLOCK PX |                          | 13700 |   254K |  1995 |  Q2, 00 | ISSUE |            |

    |*  5 |      TABLE ACCESS FULL | EMP                      | 13700 |   254K |  1995 |  Q2, 00 | SVCP |            |

    |   6.   COORDINATOR OF PX |                          |       |       |       |        |      |            |

    |   8 S    PX SEND QC (RANDOM). : TQ10000 |     2.    20.  3334.  Q1 00 | P > S | QC (RAND) |

    |   8.     ITERATOR BLOCK PX |                          |     2.    20.  3334.  Q1 00 | ISSUE |            |

    |*  9 |      TABLE ACCESS FULL | DEPT                     |     2.    20.  3334.  Q1 00 | SVCP |            |

    Can someone help me solve this problem? The TWO ID of 2 tables have an index

    Waiting for your spare update queries

    Thank you

    S

    Maybe

    merge into e emp

    using (select id

    of the Department

    when transformed! = « Y »

    ) d

    on (e.id = d.id)

    when matched

    then update

    Set e.sal_flag = 1,

    e.effective_date = date ' 2014-01-01'

    Concerning

    Etbin

  • I must be the most simple update query!

    Hi all

    I'm trying to run an update query that should be simple, that he gets, an inner join between two tables setting the value of a column non-joining tables to the value of the other tables non-joining column:

    SQL > update compound c
    2 set cmpname =)
    3. Select xname
    temp_foo 4 f
    5 where c.cmpcorporateid = f.xcorpid);

    146917 lines to date.

    Problem is that temp_foo has only one record and that only one record is a record in the compounds. How to limit the search to this record?

    Thanks for any help!

    Hello

    Since you do not have a WHERE clause in the UPDATE statement itself, all rows will be modified.
    Try this:

    update  compounds      c
    set      cmpname = (
                select  xname
                from        temp_foo     f
                where   c.cmpcorporateid = f.xcorpid
                )
    -- From here down is all new
    WHERE   xcorpid IN (
                 SELECT  cmpcorporateid
                 FROM        temp_foo
                 );
    

    If you think that's duplicate most of the work of the subquery, you are absolutely right!
    You can use the MERGE command to avoid this kind of duplication.

  • I own a Macbook pro mid 2012. Now I want to increase the RAM of 4 GB to 8 GB, please suggest if this update will help me to improve my performance to macbook.

    I own a Macbook pro mid 2012. Now I want to increase the RAM of 4 GB to 8 GB, please suggest if this update will help me to improve my performance to macbook.

    It will help in cases where the applications require more than 4 GB of RAM.  Otherwise, there will be no noticeable difference.  If you really want to increase the speed, an SSD is the best option.  They cost about 3 x's + more than a traditional HDD of same capacity...

    Ciao.

  • Have now uninstalled 43 updates, the computer was not install them for at least a month. Also error code 0 x 643 on an update Please HELP...

    This problem is driving me crazy, go round in circles, trying to use microsoft update to help. No help for the moment... Error 0x8009310B code is on the rest the updates failed.

    mentioned, check if it helps.

    When you try to install an update for .NET Framework 1.0, 1.1, 2.0, 3.0 or 3.5, you may receive Windows Update '0 x 643' error code or error code Windows install "1603".

    http://support.Microsoft.com/kb/923100 MissCats Hi,

    1. Do you have the latest changes on the computer?
    2. You have security software installed on the computer?

    Method 1

    I suggest that reset you the default Windows Update components and later try to install updates.

    How to reset the Windows Update components?

    http://support.Microsoft.com/kb/971058

    Also check out the article below and try the steps

    Method 2

    If the previous step fails, then I suggest you temporary disable the security software installed on the computer and install 5 updates at a time, to check if it helps.

    Important: Antivirus software can help protect your computer against viruses and other security threats. In most cases, you should not disable your antivirus software. If you do not disable temporarily to install other software, you must reactivate as soon as you are finished. If you are connected to the Internet or a network during the time that your antivirus software is disabled, your computer is vulnerable to attacks.

  • I want to update my photoshop CC 2015? I can't find a Cloud of update application, if I try to update in help &gt; updates nothing happens. What should I do?

    I want to update my photoshop CC 2015? I can't find a Cloud of update application, if I try to update in help > updates nothing happens. What should I do?

    Try direct updates

    CC updates to 2015:

    http://prodesigntools.com/Adobe-CC-2015-updates-links-Windows.html

    http://prodesigntools.com/Adobe-CC-2015-updates-links-Mac.html

  • I do not see one of my apps, I see everything on my desktop except the apps app! He said: download error, I need the new Prime Minister because I started to edit in my school where everything is updated. Help! I even tried to download from Adob

    I do not see one of my apps, I see everything on my desktop except the apps app! He said: download error, I need the new Prime Minister because I started to edit in my school where everything is updated. Help! I even tried to download from Adobe on the web but it brought him back to the top of the desktop application...

    Please visit: CC help | Download error in the applications tab of Creative Cloud Desktop Application

  • After you have reinstalled my old CS6 Design Standard on a new Mac Pro I can't use the updates in help. I only receive offers on update creative Cloud applications. I don't have any application of CC. How to find updates for my applications CS6?

    After you have reinstalled my old CS6 Design Standard on a new Mac Pro I can't use the updates in help. I only receive offers on update creative Cloud applications. I don't have any application of CC. How to find updates for my applications CS6?

    Beginning of the updates here and product selection, read to see if you need to install updates in the order of the numbers, or if updates are cumulative for the product http://www.adobe.com/downloads/updates/

  • Update query with join statement

    Hi guys, would check how to write a query to update with the inner join statement? The case is like this, I need to update PRD_ID on TBL A as below, based on the information of lookup table. The keys are based on the A03 column to the table time to condition only select records in LOOKUP_TBL where PRD_ID = 110001 then update to TBL_A for those who match the data and FIX_FLT = 1

    I have an update query and it works in SQL SERVER but not in ORACLE

    Update a PRD_ID = B.PRD_ID set

    Inner TBL_A A join B LOOKUP_TBL

    On A.A03 = B.A03

    AND A.FIX_FLT = 1 AND B.PRD_ID = '110001';

    TBL_A

    PRD_IDA03FIX_FLTTXNDATE
    1A11123/10/2010
    1A21110/24/2010
    1A33210/25/2010
    1A43210/26/2010
    1A53127/10/2010

    LOOKUP_TBL

    PRD_IDA03NOTE
    110001A1NULL VALUE
    110001A2NULL VALUE
    110005A3NULL VALUE
    110005A4NULL VALUE
    110001A5NULL VALUE

    You can write updates like this in Oracle.  It's called updatable join views.  Something like this:

    Update
    (select a.prd_id a_prd_id
    b.prd_id b_prd_id
    Inner TBL_A A join B LOOKUP_TBL
    On A.A03 = B.A03
    AND A.FIX_FLT = 1 AND B.PRD_ID = '110001'
    )
    Set a_prd_id = b_prd_id;

    But you must have the constraints appropriate in place, otherwise you will get the error "key preserved table.

  • Error in database engine Microsoft JET '80004005' operation must use an update query.  / fax_remove/index.asp, line 115

    everything began to receive the following error message

    Microsoft JET Database Engine error '80004005'

    Operation must use an update query.

    /fax_remove/index.asp line 115


    for the following Web page

    Remove.canchair.com


    no coding changes have been achieved

    Use your host control panel to check the permissions of the remote folder that contains the mdb and the mdb itself. Contact your host if you are unsure how to proceed.

  • Update query does not work (ora-01427)

    RDBMS 10 g 2

    Long story short, I created a column in a table in another table, that it has been moved is not really necessary that all other information is stored in other tables. With the original column has values that need to be copied to the new column before the old table is deleted.

    I use this update query:
    update bi_req bir
       set bir.job_name =
            (select distinct bij.job_name
               from bi_jobs bij,
                    bi_freq bif,
                    bi_apps bia,
                    bi_req  bir
              where bij.fk_bi_req_id = bir.pk_bi_req_id
                and bia.pk_bi_apps_id = bij.fk_bi_apps_id
                and bif.pk_bi_freq_id = bij.fk_bi_freq_id)
     where bir.job_name is null;
    If I run the select statement separately, I get the exact results that I need however, every time I run the whole statement, I get:
    Error: ORA-01427: single-row subquery returns more than one row

    The problem is that your subquery returns two or more names different jobs for a line of update.

    Which of these task names are you using? If it is not serious, then you can go with a like this aggregate query

    update bi_req bir
       set bir.job_name =
            (select max(bij.job_name) /* use just one job name */
               from bi_jobs bij,
                    bi_freq bif,
                    bi_apps bia
            where bij.fk_bi_req_id = bir.pk_bi_req_id
                and bia.pk_bi_apps_id = bij.fk_bi_apps_id
                and bif.pk_bi_freq_id = bij.fk_bi_freq_id)
     where bir.job_name is null;
    

    What I don't understand is why you need the bi_freq and bi_apps in the subquery. A simple query as follows: should not be enough?

    update bi_req bir
       set bir.job_name =
            (select max(bij.job_name) /* use just one job name */
               from bi_jobs bij
            where bij.fk_bi_req_id = bir.pk_bi_req_id)
     where bir.job_name is null;
    

    Published by: W. Sven on September 4, 2009 14:06

  • [Microsoft] [ODBC Microsoft Access driver] Operation must use an update query.

    Trying to insertion or put to update an access database I get on the error message:

    [Microsoft] [ODBC Microsoft Access driver] Operation must use an update query.

    What is the cause of this, and what could be the solution?

    Thank you.

    Ross

    I discovered after testing that the directory where the database file resides must be barking like rwx as well - not intuitively obvious, certainly!

    I ended up creating a new directory with the file of database inside also well marked for write access in the world and relying on my permissions of normal file off root on the server to protect the directory and file.

    Thank you!

    Ross

  • Need help with an update query

    Hello

    I am trying to run a query on a table update. Here's an example: I have 2 tables t1 and t2, and these tables have 2 similar columns, c11 and c12 in t1 and c21 and c22 in t2. I now have to execute an update statement for the column c11 in t1 with the values for the c21 in t2 where the c12 in t1 is equal to c22 in t2. Therefore, the request that I made:

    Update t1 set c11 =.
    (select t2.c21 from t1, t2 where t1.c11 = t2.c22)
    where t1.c11 in (select t1.c11 from t1);

    But this query gives me an error: ORA-01427: einreihig subquery returns more than one line.

    Where I'm going wrong? Kindly help.

    Hello

    Try

    UPDATE t1
       SET c11 = (SELECT t2.c21
                    FROM t2
                   WHERE t1.c12 = t2.c22)
     WHERE EXISTS (SELECT 1
                     FROM t2
                    WHERE t1.c12 = t2.c22);
    

    When you say

    c12 in t1 is equal to c22 in t2
    

    your where clause should be like

    WHERE t1.c12 = t2.c22
    

    and you do not need to join the table updated in the subquery that you can refer directly to its columns.

    from t1,t2--not needed.
    Use  FROM t2  
    

    * 009 *.

    Published by: 009 on March 18, 2010 21:04

  • Help SQL Update query

    Hi guys,.

    I'm a little out of sorts and I do not remember how to solve this problem.

    I need to update a table from which I'll do an analytical on function.

    T_TABLE_1
    USER TRANSACTION EVENTS
    1 150 0
    1 150 0
    1 200 0
    2 75 0
    3 120 0
    3 180 0
    4 100 0

    Now I need to update this table using a SQL statement that increments the event column, then it should look like the following:

    USER TRANSACTION EVENTS
    1 150 1
    1 150 2
    1 200 3
    1-75-2
    3-120-1
    3 180 2
    4 100 1

    To summarize, my problem is how to prevent the row subquery error!

    Thank you

    Sam

    Try this...

    update table1 t
    set event = (select rn+NVL((select max(event) from table2 t2 where t.usr = t2.usr),0) from
                    (select x.rowid rd, row_number() over (partition by x.usr order by X.usr) rn from table1 x) x2
                          where t.rowid = x2.rd)
    

Maybe you are looking for