Xác định xem Dữ liệu Trường trong Oracle có thuộc loại Số hay không
Vấn đề
Bạn chỉ muốn truy vấn những thứ đó từ trường varchar2 hoặc char chứa dữ liệu số mà không có bất kỳ ký tự nào khác.
Giải pháp
Tạo một hàm để xác định điều này:
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;
Sử dụng trong truy vấn:
Select Empno, Ename, dummychar from emp where is_number(dummychar) = 'TRUE';