sql >> Database teknologi >  >> RDS >> Oracle

Bestemmelse af, om feltdataene i Oracle er af nummertypen

Beslutning om feltdata i Oracle er af nummertype

Problem

Du vil kun forespørge dem fra varchar2- eller char-feltet, der indeholder taldata uden noget andet tegn.

Løsning

Opret en funktion for at bestemme dette:

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;

Brug i forespørgsel:

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

  1. Er der et alvorligt præstationshit for at bruge udenlandske nøgler i SQL Server?

  2. SQLiteException ved hjælp af WHERE +KEY_Date+='+date+'

  3. Beregn MD5-hash af en UTF8-streng

  4. Hvad er en genereret kolonne?