TOAD脚本中的变量

Rat*_*eek 6 sql oracle toad plsql

我有一个在TOAD中执行的SQL脚本.目前,我只是陈述了声明,因此:

select such-and-such from somewhere;

delete other-thing from somewhere-else;
Run Code Online (Sandbox Code Playgroud)

等等.一些where子句最终会重复,因为我有复杂的内部查询来获取特定的ID来操作.我想在变量中捕获脚本开头的ID,然后在后续where子句中使用该变量.所以像这样:

variable MY_ID = select the-ID from somewhere;

select such-and-such from somewhere where ID = @MY_ID;
Run Code Online (Sandbox Code Playgroud)

显然,我正在编写这种语法,但这正是我正在寻找的.但是我不确定这是否可以在TOAD脚本中使用.我知道我可以将整个事物转换为PL/SQL块,但我试图避免由于各种原因而不得不这样做.

使用TOAD的任何方法都可以在不转换为PL/SQL块的情况下执行此操作?

Dan*_*mge 9

我认为这将实现你想要的.您可以声明一个绑定变量,在其中插入一个值,然后在将来的语句中使用它.

variable l_var varchar2(1);

begin
  select dummy
    into :l_var
    from dual;
end;

select *
  from dual
 where dummy = :l_var;
Run Code Online (Sandbox Code Playgroud)