有没有办法用select语句声明变量?以下是一个例子。
Declare
P_Price orders.p_price%type;
Begin
P_Price := (select price from products where p_id = 1000);
在表格中查找价格以声明价格
答案 0 :(得分:0)
您在声明部分声明了一个变量(在匿名PL / SQL块中的declare
和begin
之间)。您好像在询问为该变量赋值。您可以使用select into
。
select price
into p_price
from products
where p_id = 1000;
如果查询返回1行以外的任何内容,则会出现异常。如果查询返回0行,则no_data_found
;如果查询返回的行数超过1行,则too_many_rows
。{/ p>
如果你想要完整的匿名阻止(包括你已经没有改变的声明部分)
declare
p_price products.price%type;
begin
select price
into p_price
from products
where p_id = 1000;
end;