I am a beginner in PL/SQL. I want to run simple WHILE LOOP and I am receiving errors.
Here is my code:
DECLARE
counter INTEGER := 01;
BEGIN
WHILE counter <= 30
LOOP
SELECT name, count(iid) as Counts
FROM table.orders
WHERE date_inserted >= TO_DATE('14-SEP-16 12.00.00 AM','DD-MON-YY HH.MI.SS AM')
AND date_inserted <= TO_DATE('14-SEP-16 12.'counter'.00 PM','DD-MON-YY HH.MI.SS AM')
HAVING count(iid) >= 60
ORDER BY count(iid) DESC;
END LOOP;
END;
I am getting these errors when running the code:
*Error starting at line : 1 in command -
DECLARE
counter INTEGER := 01;
BEGIN
WHILE counter <= 30
LOOP
SELECT iname, count(iid) as Counts
FROM table.orders
WHERE date_inserted >= TO_DATE('14-SEP-16 12.00.00 AM','DD-MON-YY HH.MI.SS AM')
AND date_inserted <= TO_DATE('14-SEP-16 12.'counter'.00 PM','DD-MON-YY HH.MI.SS AM')
HAVING count(iid) >= 60
ORDER BY count(iid) DESC;
END LOOP;
END;
Error report - ORA-06550: line 9, column 49:
PL/SQL: ORA-00907: missing right parenthesis
ORA-06550: line 6, column 5:
PL/SQL: SQL Statement ignored
06550. 00000 - "line %s, column %s:\n%s"
Cause: Usually a PL/SQL compilation error.
Action:
What seems to be the problem? Thanks in advance!
TO_DATE('14-SEP-16 12.' + counter + '.00 PM','DD-MON-YY HH.MI.SS AM')