oracle 如何修复无效数字

k4emjkb1  于 2022-11-22  发布在  Oracle
关注(0)|答案(1)|浏览(252)

我收到错误ORA-01722:当我运行这段代码时,发现一个无效的数字,而且我似乎不知道错误来自哪里:
ORA-01722:无效编号

  1. INSERT INTO P2720515_TP
  2. SELECT PRO_ID,
  3. THEATRE_ID,
  4. CLIENT_ID,
  5. TIME_ID,
  6. PURCHASE#,
  7. PAYMENTMETHOD,
  8. DELIVERYMETHOD,
  9. T_SUM
  10. FROM (SELECT P.PRO_ID,
  11. T.THEATRE_ID,
  12. C.CLIENT_ID,
  13. TM.TIME_ID,
  14. PURCHASE#,
  15. PAYMENTMETHOD,
  16. DELIVERYMETHOD,
  17. SUM(TOTALAMOUNT) T_SUM
  18. FROM OPS$YYANG00.PERFORMANCE PER,
  19. P2720515_TM TM,
  20. P2720515_P P,
  21. P2720515_T T,
  22. P2720515_C C,
  23. OPS$YYANG00.TICKETPURCHASE TP
  24. WHERE PER.P# = P.PRO_NO
  25. AND PER.THEATRE# = T.THEATRE_NO
  26. AND TP.CLIENT# = C.C_NO
  27. AND EXTRACT(YEAR FROM PER.PDATE) = TM.YEAR
  28. AND EXTRACT(MONTH FROM PER.PDATE) = TM.MONTH
  29. GROUP BY P.PRO_ID,
  30. T.THEATRE_ID,
  31. C.CLIENT_ID,
  32. TM.TIME_ID,
  33. PURCHASE#,
  34. PAYMENTMETHOD,
  35. DELIVERYMETHOD);
btqmn9zl

btqmn9zl1#

当您尝试比较两个不同的数据类型时,通常会给出该类型的错误(无效数字)。或者您正在使用没有聚合值的聚合函数。
请检查您尝试聚合或比较的列中的所有值。
你也可以使用cast函数来快速求解。

相关问题