| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.misc -> Trouble using the ranking function in PL/SQL
Hi,
I am currently trying to use Oracle's Rank function in a PL/SQL cursor. When trying to compile the code snippet below, I receive a PLS-00103 Error.
BEGIN
FOR c_rec IN
( SELECT
NVL(Category,'Dealers and Bankers') AS Category,
NVL(currency_grp_loc,'ALL') AS Currency,
broker_name,
NVL(Prd_Grp_Name,'ALL') AS Product_grp,
time_period,
Sum_Amount_USD,
Rank() over ( PARTITION BY Time_Period,
Category,
Prd_Grp_Name
ORDER BY Time_Period,
Category ) AS Rank,
NULL AS Err_location,
NULL AS Err_msg
FROM dmIMD_Owner.IMDTrdCube_Tbl t
WHERE broker_name IS NOT NULL
AND prd_grp_name IS NOT NULL
AND category IS NOT NULL
AND currency_grp_loc ='ALL'
ORDER BY nvl(time_period,to_date('01/01/1900','mm/dd/yyyy')),
Category ,
rpt_srt)
LOOP
<< do stuff Here>>
END LOOP;
END;
ORA-06550: line 10, column 21:
PLS-00103: Encountered the symbol "(" when expecting one of the following:
, from
If I run the SQL statement for the cursor seperately, It runs perfectly.
Any suggestions would be greatly appreciated.
Thanks,
Johnetta
SQL> Received on Thu Oct 18 2001 - 10:23:28 CDT
![]() |
![]() |