By joining update query

I need to update on the column in the table as T1 based on the column of table T2, for example

T1

col_1, col_2, col_3

T2

col_1, col_2, col_3

I need to update T1 col_3 by joining T1 and T2 and the updated value is on T1 col_3

Select * from T1, T2 b

where a.col_1 = b.col_2

and a.col_2 = b.col_2

something like below, but I know under query is false, I just wanted to understand

Update T1 set col_3 = b.col_3 where

a.col_1 = b.col_2

and a.col_2 = b.col_2

Hello

944524 wrote:

I need to update on the column in the table as T1 based on the column of table T2, for example

T1

col_1, col_2, col_3

T2

col_1, col_2, col_3

I need to update T1 col_3 by joining T1 and T2 and the updated value is on T1 col_3

Select * from T1, T2 b

where a.col_1 = b.col_2

and a.col_2 = b.col_2

something like below, but I know under query is false, I just wanted to understand

Update T1 set col_3 = b.col_3 where

a.col_1 = b.col_2

and a.col_2 = b.col_2

Whenever you have a problem, please post a small example data (CREATE TABLE and only relevant columns, INSERT statements) of all the tables involved, so that people who want to help you can recreate the problem and test their ideas.

Also post the exact results you want from this data, as well as an explanation of how you get these results from these data, with specific examples.

If you ask yourself on a DML statement, such as UPDATE, then the CREATE TABLE and you post instructions INSERT must re - create the tables as they are to the DML, and the results will be the content of the or a modified tables when it's all over.

Always say what version of Oracle you are using (for example, 11.2.0.2.0).

See the FAQ forum: Re: 2. How can I ask a question on the forums?

Maybe you want something like:

MERGE INTO dst t1

WITH THE HELP OF)

SELECT t1.col_1

t1.col_2

t2.col_3

FROM t1

JOIN t2 ON t2.col_2 = t1.col_1

AND t2.col_2 = t1.col_2

)           src

(Dst.col_1 = src.col_1 IN

AND dst_col_2 = src.col_2

)

WHEN MATCHED THEN UPDATE

SET dst.col_3 = src.col_3

;

But, as all the rest, have that depends on your data and your needs.  What is unique in the tables?  What happens if no line in t2 is a given in t1 line?  What happens if 2 or more rows match?  You relly meant comparing the t1.col_1 and the t1.col_2 to t2.col_2?

Tags: Database

Similar Questions

  • 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.

  • 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.

  • 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

  • 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.

  • Join the query/right /.

    Join the query/right /.

    In the end, we try to find the ZZOMTAB. STAFF
    I know the value exists because I have asked this by
    K_NO
    By this query

    Select
    ZZOMTAB. STAFF
    Of
    ZZOMTAB
    where
    K_NO = 146735

    so that's where
    But what I'm left with app_no = 79219

    I tried this query and it does not work (no value in the ZZOMTAB. STAFF)
    SELECT
    ZZOMTAB. STAFF
    OF TKASERTAB
    ZZOMTAB RIGHT JOIN
    ON TKASERTAB. K_NO = ZZOMTAB. K_NO

    APPTAB RIGHT JOIN
    ON TKASERTAB.app_no = APPTAB.app_no

    where
    APPTAB.app_no = 79219


    the value that I'm trying to get is ZZOMTAB. STAFF
    and I give myself with app_no = 79219

    the tables are

    the tables are
    TKASERTAB with K_NO and APPNO columns
    APPTAB with column APPNO
    and
    ZZOMTAB with K_NO

    I'm trying to get the value of ZZOMTAB. STAFF
    Can anyone help?
    Thanks in adv


    Try to move the APPTAB.app_no = 79219 WHERE clause and put it in your RIGHT JOIN.

    SELECT
    ZZOMTAB. STAFF
    OF TKASERTAB
    ZZOMTAB RIGHT JOIN
    ON TKASERTAB. K_NO = ZZOMTAB. K_NO
    APPTAB RIGHT JOIN
    ON TKASERTAB.app_no = APPTAB.app_no
    AND APPTAB.app_no = 79219

    Another thread

    Phil

  • 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

  • How can I update query joining multiple tables.

    Hi team,

    I want to update a column of TABLE 1, but it should rally with TABLE 2. Under certain conditions, that it should be updated.

    I created as below. But it does not work.

    Can you please suggest me how can I do?

    UPDATE Table1
    SET Table1.Column1 = 'name'
    FROM Table1 T1, Table2 T2
    WHERE T1.id = T2.id
    and T1.name  = T2.Name
    And T1.id = UPDATE Table1
      SET Table1.Column1 = 'name'
    FROM Table1 T1, Table2 T2
    WHERE T1.id = T2.id
    and T1.id = '100';
    
    


    Hello

    Your update statement is not at all clear.

    Something like below:

    UPDATE Table1 T1

    THE T1 VALUE. Column1 = 'name '.

    WHERE EXISTS (SELECT 1 FROM Table2 T2 WHERE)

    T1.ID = T2.id and T1.name = T2. (Name);

    (Or)

    UPDATE Table1 T1

    THE T1 VALUE. Column1 = 'name '.

    WHERE EXISTS (SELECT 1 FROM Table2 T2 WHERE)

    T1.ID = T2.id and T1.name = T2. The name) and T1.id = '100';

  • Update query rewriting and fine adjustment

    Hello world

    I hope everyone is fine and learning :). I need some advice on the update statement and its development. I'm using Oracle 11 g 2. I have three tables and join these tables to update rows of a table. Below are examples of table and scripts data to explain the scenario concerned.

    create table employees (number of emp_id, emp_name varchar2 (50), number of manager_id);

    create table Department (dept_id, dept_name varchar2 (50), emp_name varchar2 (50), manager_level varchar2 (20));

    create table manager_lookup (manager_level_id, manager_level varchar2 (20));

    insert into employee values (1, 'EMPA', 3);

    insert into employee values (2, "EmpB", 1);

    insert into employee values (3, 'MPCs', 1);

    insert into employee values (4, "EmpD", 2);

    insert into employee values (5, 'Prevent', 1);

    insert into employee values (6, 'EmpF', 3);

    insert into Department values (1, "DeptA", "EmpD", "Level3");

    insert into Department values (2, 'DeptB', 'MPCs', 'Level 2');

    insert into Department values (3, 'DeptC', 'EMPA', 'Level 1');

    insert into Department values (4, 'DeptD', 'EmpF', 'Level 1');

    insert into manager_lookup values (1, 'Level 1');

    insert into manager_lookup values (2, 'Level 2');

    insert into manager_lookup values (3, "Level3");

    commit;

    I need to update manager_id in table manager_level_id in the manager_lookup table by joining employee with service on emp_name and service with manager_lookup on manager_level.

    When I run under update statement, it updates all six rows in the tables of the employee. The corresponding lines to update to this manager_id while lines without correspondence update to null.

    Employee UPDATE one

    SET manager_id =

    (SELECT manager_level_id

    FROM (SELECT mp.manager_level_id, dp.emp_name

    Department OF dp, mp manager_lookup

    WHERE dp.manager_level = mp.manager_level) b

    WHERE a.emp_name = b.emp_name);

    I add where clause for the employee table which lines I want to update. so, I've updated script below.

    Employee UPDATE one

    SET manager_id =

    (SELECT manager_level_id

    FROM (SELECT mp.manager_level_id, dp.emp_name

    Department OF dp, mp manager_lookup

    WHERE dp.manager_level = mp.manager_level) b

    WHERE a.emp_name = b.emp_name)

    WHERE a.emp_name in (SELECT dp.emp_name

    Department OF dp, mp manager_lookup

    WHERE dp.manager_level = mp.manager_level);

    Above update statement can get the work done, but in the real world problem, it gives performance issues when dealing with big query on the largest tables in the join clause.

    Fusion is also another option, but I wonder how I can achieve this using the update clause statement.

    Can you please provide your wonderful suggestions or solutions? I'd appreciate the answers really.

    Please go on the issue.

    If there are constraints/unique indexes on the relevant key columns, you might be able to use view of the update online. Untested (and probably needs more work around null values), but something like this:

    update
      ( select e.manager_id, ml.manager_level_id
        from   employee e
               join department dp on dp.emp_name = e.emp_name
               join manager_lookup ml on ml.manager_level = dp.manager_level
        where  e.manager_id <> ml.manager_level_id )
    set manager_id = manager_level_id;
    

    (I hope that is an example of made-up anyway, and it is not actually an emp_name column in the department table)

  • Join the query

    Hello

    I have two tables Employee and EmployeeDetail

    Employee table of data as follows:
    EmployeeID
    1
    2


    EmployeeDetail table of data as follows:
    EmployeeDetailID FkEmployeeID EmployeeName
    1 1 a
    2 2 b
    3 2 b1


    Note: that in the table EmployeeDetail, detail of the employee was inserted not updated therefore for EmployeeID: exiists there are 2 previous entry in the EmployeeDetail table.

    I want to take the latest recordings as
    EmployeeID EmployeeName
    1 a
    2 b1



    I tried following query
    Select Employee.EmployeeID, EmployeeDetail.EmployeeName of the employee
    Left Join EmployeeDetail
    where Employee.EmployeeID = EmployeeDetail.FkEmployeeID

    But he has a problem... I do not know how to choose the last disc

    last disk would probably be more EmployeeDetailID, base on this point, as an easy way:

    Select *
    From   Employee e, EmployeeDetail ed
    where e.employee_id = ed.employee_id
        And ed.EmployeeDetailID = (select Max(EmployeeDetailID ) from EmployeeDetail ed2 where ed2.employee_id = e.employee_id)
    

    best solution would be a rank of the analytic function on the partition by but it is more understandable.

    Published by: Mustafa KALAYCI on 05.Eki.2010 09:44

  • Several passes update query

    I tried to update several columns using the query below and the error message received
    ORA-01427: einreihig subquery returns multiple rows

    Also, perhaps because I could not get this work was the reason for which the original did not work in which I tried to recover the data from a With statement and otherwise, did a create table. Would be a statement work in writing a query update?
    update
          transf_cohort1
          set (primary_ethnicity, citizenship_type, residency, cwid, cohort_pidm,bansid) = 
              (select plus.primary_ethnicity,
                      plus.citizenship_type,
                      plus.residency,
                      plus.cwid,
                      plus.cohort_pidm,
                      plus.bansid
                from plus_coh plus
                inner join transf_cohort1
                on transf_cohort1.sid = plus.sid
                where transf_cohort1.cohort_pidm is null
                                      
              )
        ; 

    Thank you, never liked type ;-)

    Concerning

    Etbin

    for the OP

    update
          transf_cohort1 t_c
          set (primary_ethnicity, citizenship_type, residency, cwid, cohort_pidm, bansid) =
              (select primary_ethnicity, citizenship_type, residency, cwid, cohort_pidm, bansid
                 from (select plus.primary_ethnicity,
                              plus.citizenship_type,
                              plus.residency,
                              plus.cwid,
                              plus.cohort_pidm,
                              plus.bansid,
                              transf_cohort1.unique_column  /* @ */
                         from plus_coh plus inner join transf_cohort1
                                            on transf_cohort1.sid = plus.sid
                        where transf_cohort1.cohort_pidm is null
                      )
                where unique_column  /* @ */ = t_c.unique_column  /* @ */
              )
          where t_c.unique_column /* @ */ in (select transf_cohort1.unique_column  /* @ */
                                        from plus_coh plus inner join transf_cohort1
                                                           on transf_cohort1.sid = plus.sid
                                       where transf_cohort1.cohort_pidm is null
                                     )
    

    Edited by: Etbin on 10.6.2010 23:14
    added comment / * @ * / do more easily locate

    so be sid (according to the post, below)

    update
          transf_cohort1 t_c
          set (primary_ethnicity, citizenship_type, residency, cwid, cohort_pidm, bansid) =
              (select primary_ethnicity, citizenship_type, residency, cwid, cohort_pidm, bansid
                 from (select plus.primary_ethnicity,
                              plus.citizenship_type,
                              plus.residency,
                              plus.cwid,
                              plus.cohort_pidm,
                              plus.bansid,
                              transf_cohort1.sid
                         from plus_coh plus inner join transf_cohort1
                                            on transf_cohort1.sid = plus.sid
                        where transf_cohort1.cohort_pidm is null
                      )
                where sid = t_c.sid
              )
          where t_c.sid in (select transf_cohort1.sid
                              from plus_coh plus inner join transf_cohort1
                                                 on transf_cohort1.sid = plus.sid
                             where transf_cohort1.cohort_pidm is null
                           )
    

    Edited by: Etbin on 10.6.2010 23:23

  • 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

  • RETURN TO THE UPDATE QUERY CLAUSE

    I have a request written in Postgres.   This will pick up the records in the table job_information with the State, as provided by the application (ex: "READY_TO_RUN") and with limit of records like the one provided by the application (ex: 100), then updates the job_information with app get (ex: "ACHIEVEMENTS") and returns that defined (means, returns the data table job_information total for these got put to date with the given State) records for the use of the application.

    Can someone give me advice on the translation in Oracle?   Thank you!!

    Query in Postgres

    UPDATE job_information AS J1
    SET status=?
    FROM
      (SELECT job_name,
        job_group,
        created_date
      FROM job_information
      WHERE status           =?
      AND CURRENT_TIMESTAMP >= scheduled_execution_time
      ORDER BY scheduled_execution_time limit ?
      ) AS J2
    WHERE J1.job_name   = J2.job_name
    AND J1.job_group    = J2.job_group
    AND J1.created_date = J2.created_date RETURNING *;
    

    Example of a query (in postgres):

    UPDATE job_information AS J1
    SET status= 'ACQUIRED'
    FROM
      (SELECT job_name,
        job_group,
        created_date
      FROM job_information
      WHERE status           = 'READY_TO_RUN'
      AND CURRENT_TIMESTAMP >= scheduled_execution_time
      ORDER BY scheduled_execution_time limit 100
      ) AS J2
    WHERE J1.job_name   = J2.job_name
    AND J1.job_group    = J2.job_group
    AND J1.created_date = J2.created_date RETURNING *;
    

    Oracle SQL - query, I wrote it is not working

    UPDATE JOB_INFORMATION SET STATUS=
    (
    WITH J2 as (
                            select job_name, job_group, created_date from (SELECT job_name, job_group, created_date FROM job_information WHERE status= :b and current_timestamp >= scheduled_execution_time order by scheduled_execution_time ) where rownum<= :c
                )
    SELECT distinct :a FROM JOB_INFORMATION J1, J2 WHERE J1.job_name = J2.job_name AND J1.job_group = J2.job_group AND J1.created_date = J2.created_date
    )
    RETURNING * FROM JOB_INFORMATION BULK COLLECT INTO SOMETHING ;
    
    1. create or replace package test_pack
    2. as
    3. type r_tab is (record
    4. test.job_name%type job_name,
    5. (status test.status%type);
    6. type t_tab is table of the r_tab;
    7. function test_func (v_status_o VARCHAR, v_status_i VARCHAR) - USE VARCHAR2
    8. T_tab RETURN PIPELINED;
    9. end;
    10. /
    11. create or replace the BODY of PACKAGE as test_pack
    12. function test_func (v_status_o VARCHAR2, v_status_i VARCHAR2) return t_tab pipelined as
    13. PRAGMA AUTONOMOUS_TRANSACTION;
    14. v_tab t_tab;
    15. Start
    16. Update test
    17. set status = v_status_o :-
    18. where Job_name in (select job_name TEST where status = :v_status_i).
    19. job_name, return STATUS
    20. bulk collect into v_tab;
    21. commit;
    22. because me in 1... loop v_tab. Count
    23. pipe row (v_tab (i));
    24. end loop;
    25. end;
    26. end;
    27. /

    REMOVE the colon before parameters and use the same types of data

  • If update query statement

    I was wondering if you could have a statement cfif inside a query of update.  See the example below.  Is there a better way to do it? Thank you.

    < cfquery DATASOURCE = "xxx" name = "Refresh" >

    UPDATE plant_gen_info

    SET levels_complete = #URL.var0 #.

    < cfif IsDefined ("URLvar13" >)

    , Q1_answer = #URL.var13 #.

    < / cfif >

    WHERE ID = #session.member_id #.

    < / cfquery >

    TheScarecrow,

    Yes, the instructions of dynamic query can be assembled using .  I suggest you spend your IsDefined() a StructKeyExists() and strongly suggest that make you good use of :

    
      UPDATE plant_gen_info
            SET levels_complete = 
                
                ,Q1_answer = 
                
    
            WHERE ID = 
      
    

    I put a "*" space reserved for cfsqltype attribute because I'm not sure which would be suitable for your variables.  See the Help documentation to learn more about the cfqueryparam and the cfsqltype.

    -Carl V.

Maybe you are looking for