sql >> Databáze >  >> RDS >> Oracle

Určení, zda jsou pole Data v Oracle typu Number

Určení, zda jsou data pole v Oracle typu Number

Problém

Chcete se dotazovat pouze z pole varchar2 nebo char obsahujícího číselná data bez jakéhokoli dalšího znaku.

Řešení

Vytvořte funkci, která to určí:

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;

Použít v dotazu:

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

  1. Příkazy IF-THEN-ELSE v postgresql

  2. SQL Server Standard Edition High Availability Futures

  3. Jak najít ASCII kód ​​pro daný znak v MySQL

  4. Jak zkontrolovat, zda existuje uložená procedura před jejím vytvořením