tamda bu istediğin için şöyle bi function yazmıştım zamanında.

Alıntı
CREATE OR REPLACE FUNCTION Is_Number (
i_ IN VARCHAR2 ) RETURN VARCHAR2
IS
Result_ boolean;
x_ NUMBER;
FUNCTION Sayi (
i_ IN VARCHAR2 ) RETURN NUMBER
IS
sayi_ NUMBER;
BEGIN
BEGIN
sayi_ := i_;
EXCEPTION WHEN OTHERS THEN
BEGIN
sayi_ := to_number(i_);
EXCEPTION WHEN OTHERS THEN
BEGIN
sayi_ := REPLACE(i_,'.',',');
EXCEPTION WHEN OTHERS THEN
sayi_ := REPLACE(i_,',','.');
END;
END;
END ;
RETURN sayi_;
END Sayi;
BEGIN
x_ := Sayi(i_);
RETURN 'TRUE';
EXCEPTION WHEN OTHERS THEN RETURN 'FALSE';
END Is_Number;
bu function u derledikten sonra
sorgun şu şekilde oluyor
Alıntı
select * from tablo_adı
where is_number(sütun_adı) = 'FALSE'
not : vermiş olduğum function senin sql sorgundan %7000 daha hızlı çalışıyor.