Select Oracle从双通道选择不工作

Select Oracle从双通道选择不工作,select,oracle11g,Select,Oracle11g,我正在查询工具或Oracle中运行上述PL/SQL块。当我尝试执行时,它为最后一个SELECT提供了一个“在这个SELECT中应该有一个INTO子句”。如果我注释掉最后一个SELECT,那么它将执行,不会出错。 在被调用的过程中,“NumberOfItems”是out参数,“OrderID”是In参数 我的问题:上面PL/SQL块中的最后一个SELECT有什么问题?在PL/SQL块中,必须将SELECT语句中选定的列指定给变量 在这种情况下,您可以定义一个变量 DECLARE NUMBE

我正在查询工具或Oracle中运行上述PL/SQL块。当我尝试执行时,它为最后一个SELECT提供了一个“在这个SELECT中应该有一个INTO子句”。如果我注释掉最后一个SELECT,那么它将执行,不会出错。 在被调用的过程中,“NumberOfItems”是out参数,“OrderID”是In参数


我的问题:上面PL/SQL块中的最后一个SELECT有什么问题?

PL/SQL
块中,必须将
SELECT
语句中选定的列指定给变量

在这种情况下,您可以定义一个变量

  DECLARE
  NUMBEROFITEMS NUMBER;
  ORDERID       NUMBER;
BEGIN
  ORDERID := 7;

  SUNIL.PROCEDURE_WITH_OUT_PARAMETERS(NUMBEROFITEMS, ORDERID);--this increments the orderid by 1

  DBMS_OUTPUT.PUT_LINE(NUMBEROFITEMS || ' for orderid ' || (ORDERID + 1));

  SELECT (NUMBEROFITEMS || ' for orderid ' || (ORDERID +1)) AS 'Result' FROM DUAL;
END;
然后


“上面PL/SQL块中的最后一个SELECT有什么问题?——正如错误消息告诉您的那样:您需要一个
INTO
子句来将查询结果存储在某个地方。因此在Oracle中不能执行类似于“SELECT expression from dual”的操作?我是SQL Server人员,对Oracle来说是新手。
foo VARCHAR(1024);
SELECT (NUMBEROFITEMS || ' for orderid ' || (ORDERID +1)) into foo FROM DUAL;