CREATE OR REPLACE FUNCTION ip_num(ipaddress IN VARCHAR2) RETURN NUMBER AS ipnum NUMBER := 0; pos1 NUMBER := 0; pos2 NUMBER := 0;BEGIN FOR i IN 1 .. 3 LOOP pos2 := to_number(instr(ipaddress, '.', 1, i)); ipnum := ipnum + to_number(substr(ipaddress, pos1 + 1, pos2 - pos1 - 1)) * power(2, 8 * (4 - i)); pos1 := pos2; END LOOP; ipnum := ipnum + to_number(substr(ipaddress, pos1 + 1)); RETURN ipnum;exception when others then return null;END;/