sql >> データベース >  >> RDS >> Oracle

Oracle:多くの列を持つテーブルの1つのフィールドを更新しながら行をコピーします

    これを行う簡単な方法は、匿名のPL/SQLブロックとROWTYPEの使用法です。 :

    -- setup test table
    create table my_table(pk, value) as
      select 17 pk, 'abc' value from dual;
    
    declare
      l_data my_table%rowtype;
    begin
      -- fetch the row we want to copy
      select * into l_data from my_table tbl where tbl.pk = 17; 
      -- update all fields that need to change
      l_data.pk := 18;
      -- note the lack of parens around l_data in the next line
      insert into my_table values l_data; 
    end;
    



    1. IRIWorkbenchからリモートジョブを実行する方法

    2. 同じテーブルに対するpostgres再帰クエリ

    3. 特別な条件でグループ化する方法

    4. Postgresqlで配列を行に分割する方法