Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/03/2013, 06:34
morway
 
Fecha de Ingreso: enero-2009
Mensajes: 32
Antigüedad: 15 años, 3 meses
Puntos: 2
Respuesta: Dividir Unicamente registros que contenga valor numerico

Create una función que encapsule la operación de división capturando la excepción VALUE_ERROR

Código SQL:
Ver original
  1. CREATE OR REPLACE FUNCTION F_DIVIDIR(A IN VARCHAR2, B IN VARCHAR2) IS
  2. DIVIDENDO NUMBER;
  3. DIVISOR NUMBER;
  4. BEGIN
  5.   DIVIDENDO := TO_NUMBER(A);
  6.   DIVISOR := TO_NUMBER(B);
  7.  
  8.   RETURN DIVIDENDO/DIVISOR;
  9.  
  10. EXCEPTION
  11. WHEN VALUE_ERROR THEN
  12. RETURN NULL;
  13. END;

Además tb convendría capturar la división por cero.

Un saludo
__________________
Anotaciones de un programador