I am getting the error ORA-01722: invalid number when I run this code and I don't seem to know where the error is from:
ORA-01722: invalid number
INSERT INTO P2720515_TP
SELECT PRO_ID,
THEATRE_ID,
CLIENT_ID,
TIME_ID,
PURCHASE#,
PAYMENTMETHOD,
DELIVERYMETHOD,
T_SUM
FROM (SELECT P.PRO_ID,
T.THEATRE_ID,
C.CLIENT_ID,
TM.TIME_ID,
PURCHASE#,
PAYMENTMETHOD,
DELIVERYMETHOD,
SUM(TOTALAMOUNT) T_SUM
FROM OPS$YYANG00.PERFORMANCE PER,
P2720515_TM TM,
P2720515_P P,
P2720515_T T,
P2720515_C C,
OPS$YYANG00.TICKETPURCHASE TP
WHERE PER.P# = P.PRO_NO
AND PER.THEATRE# = T.THEATRE_NO
AND TP.CLIENT# = C.C_NO
AND EXTRACT(YEAR FROM PER.PDATE) = TM.YEAR
AND EXTRACT(MONTH FROM PER.PDATE) = TM.MONTH
GROUP BY P.PRO_ID,
T.THEATRE_ID,
C.CLIENT_ID,
TM.TIME_ID,
PURCHASE#,
PAYMENTMETHOD,
DELIVERYMETHOD);
when you trying to compare two different datatypes it usually gives that type of error (invalid number). or you are using aggregate function with no aggregate values.
check all values that comes in columns which you are trying to aggregate or in comparison.
you can also use cast function to make it solve quickly.