有没有一种方法可以使PL / SQL中的变量等于SELECT

时间:2020-11-03 23:25:47

标签: sql oracle plsql

这是代码:

DECLARE
v1 C_table.cout%TYPE;
v2 C_table.km%TYPE;
BEGIN
v2 := Select km from C_table where v1 = 1;
END;

当我键入它时,它给了我很多错误(由:= SELECT...引起)。有没有办法使 v2 等于选择返回的结果?

1 个答案:

答案 0 :(得分:2)

使用INTO(并设置v1的值并将其与列进行比较):

DECLARE
  v1 C_table.cout%TYPE := 1;
  v2 C_table.km%TYPE;
BEGIN
  Select km INTO v2 from C_table where cout = v1;
  DBMS_OUTPUT.PUT_LINE( v2 );
END;
/

其中的示例数据:

CREATE TABLE C_table ( cout, km ) AS
SELECT 1, 42 FROM DUAL;

输出:

42

db <>提琴here