试图在Toad中循环变量

时间:2017-02-23 19:51:18

标签: oracle plsql

我正在尝试通过800k行数据读取一些代码,只显示某些结果,然后将其分组,然后再次循环数据并根据新变量创建另一个组。

我需要的例子:

1 - 对在其中销售了部门100的所有交易进行分组,并将该组命名为100 2 - 将在其中销售部门101的所有交易分组并命名该组101

ETC,我需要为7个部门做这个。下面是我的代码,我觉得我已接近正确。

我相信我的声明可能是错误的,因为它看起来只允许返回30行,但也许有人可以为我确认一下?

DECLARE
    DEPT_LOOP number(3) := 100;

BEGIN
    WHILE DEPT_LOOP < 130 LOOP

        SELECT DEPT_LOOP, MARKET_BASKET_ITM2.*
        INTO   DEPT_LOOP, MARKET_BASKET_ITM2.*
        FROM   ( SELECT MARKET_BASKET_ITM2.ORDER_KEY
                 FROM   JBINGEL.MARKET_BASKET_ITM2 MARKET_BASKET_ITM2
                 WHERE  (MARKET_BASKET_ITM2.DEPARTMENT_ID = DEPT_LOOP)
                 GROUP BY MARKET_BASKET_ITM2.ORDER_KEY ) subquery,
               JBINGEL.MARKET_BASKET_ITM2 MARKET_BASKET_ITM2
        WHERE  (subquery.ORDER_KEY = MARKET_BASKET_ITM2.ORDER_KEY);

        DEPT_LOOP := DEPT_LOOP + 1;

    END LOOP;
END;

0 个答案:

没有答案