sql >> Database >  >> RDS >> Oracle

Bepalen of de veldgegevens in Oracle van het type Getal zijn

Bepalen of de veldgegevens in Oracle van het type Getal zijn

Probleem

U wilt die alleen opvragen vanuit het varchar2- of char-veld dat nummergegevens bevat zonder enig ander teken.

Oplossing

Maak een functie om dit te bepalen:

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;

Gebruik in zoekopdracht:

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

  1. Selecteer een willekeurige steekproef van resultaten uit een queryresultaat

  2. Kan een INNER JOIN betere prestaties bieden dan BESTAAT?

  3. Splitfunctie in orakel naar door komma's gescheiden waarden met automatische volgorde

  4. Voeg meerdere rijen in een array samen met SQL op PostgreSQL