为什么选择声明中会出现INTO条款?

时间:2016-10-17 10:32:55

标签: sql oracle plsql

我没有声明一个变量来从查询中赋值,那么为什么下面的代码会抛出INTO子句的错误?

create or replace PROCEDURE Disp_of_IPC_Crime_Case(
    startDate DATE,
    endDate   DATE)
IS

BEGIN
  SELECT * 
  FROM (
          SELECT COUNT(*) 
          FROM t_crime_major_minor_heads cdmh 
          INNER JOIN t_fir_registration fr
          ON fr.FIR_REG_NUM= cdmh.FIR_REG_NUM 
          INNER JOIN t_final_report fnr
          ON fnr.FIR_REG_NUM = cdmh.FIR_REG_NUM
          WHERE MAJOR_HEAD_CD = 8
          AND fr.RECORD_CREATED_ON > (StartDate - INTERVAL '5' YEAR)
          AND NVL(fnr.FR_TYPE_CD,0) =11
          AND NVL(fnr.CHARGSHEET_OR_NOT,'')='N'
    ) Below5COUNTERFEITING;
END;

1 个答案:

答案 0 :(得分:1)

如果程序的目的是提供报告,您可以passing back a ref cursor执行此操作,或者如果您使用的是Oracle 12.1或更高版本,则可以使用新的implicit statement result功能。