Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Bestimmen, ob die Felddaten in Oracle vom Typ Zahl sind

Feststellen, ob die Felddaten in Oracle vom Typ Zahl sind

Problem

Sie möchten diese nur aus dem varchar2- oder char-Feld abfragen, das Zahlendaten ohne andere Zeichen enthält.

Lösung

Erstellen Sie eine Funktion, um dies zu bestimmen:

Create or Replace Function is_number (iNumber in Varchar2)
    Return Varchar2
is
nVal Number; 
Begin
   nVal := To_Number(iNumber);
  -- if there is no error 
   Return('TRUE');
Exception
  when others then
   -- error during conversion 
   Return('FALSE');
end;

In Abfrage verwenden:

Select Empno, Ename, dummychar
   from emp
where is_number(dummychar) = 'TRUE';