选择值并将其分配给变量

时间:2016-08-10 05:36:11

标签: oracle oracle11g

$parentId = select id from node where uin_title = 'Control';
insert into list (id) values ($parentId)

我想在oracle中这样做。从表节点中选择1个值,将其分配给变量,然后将该变量插入另一个表中。我不知道如何在甲骨文中做到这一点。

2 个答案:

答案 0 :(得分:1)

Oracle Documentation是一个很好的起点。

如果需要插入单个值,可以使用标量变量:

<payloadfactory>
      <format>
               <m:echoStringArrays xmlns:m="http://echo.services.core.carbon.wso2.org">
                  <m:a>teststr1</m:a>
                  <m:b>teststr2</m:b>
                  <m:c>teststr3</m:c>
               </m:echoStringArrays>
            </format>
</payloadfactory>

如果您必须插入多行,这将无效;在这种情况下,您需要使用集合:

declare
    v number;
begin
    select val into v
    from someTable
    where val != 999;
    --
    insert into someOtherTable(someField) values (v);
end;

然而,最好的方法是使用纯SQL,它比PL / SQL方式更可读,更快:

declare
    type tableOfNumber is table of number index by pls_integer; 
    v tableOfNumber;
begin  
    select val
    bulk collect into v
    from someTable
    where val != 999;    
    --
    forall i in v.first .. v.last
      insert into someOtherTable(someField) values (v(i));
end;
/

答案 1 :(得分:0)

请尝试声明:

CloudBlockBlob