过去几天我一直在为此工作,我找不到出路。我有一个需要在屏幕上打印报告的C#Web应用程序。这个相同的应用程序在数据库(Oracle)上调用存储过程并返回一个游标。这是程序光标返回多行
PROCEDURE report_total(beginDate IN DATE, endDate IN DATE, c OUT REF CURSOR)
AS
BEGIN
OPEN
c
FOR
SELECT
month
,sum(field1)
-- + a lot of other fields
FROM
view1 v
WHERE
beginDate <= v.date
AND v.Date < endDate
GROUP BY
month
END;
这工作正常,它给了我每月的field1(和其他)的总和。假设你至少输入一个完整的年份范围,最多可以输入12行。 Howhever。我想制作一些类似的存储过程,这些存储过程会给我这些月份的细节。假设beginDate ='2003-01-01'和endDate ='2005-01-05'(YYYY-MM-DD),我需要25行。每月一次,每年一次。我想用光标OUT得到这些结果。如果你有一个不涉及游标的最简单的想法,请给我建议。
你能告诉我一个你有什么和你想要什么的例子吗?也许它只是我,但从你的问题的措辞,我无法辨别两者之间的差异。 – Melvin
一个总是返回12行,另一个必须返回(12 *年数)行 – ALOToverflow