СУБД
Добавлено shixaro, редактировал(а) shixaro Apr 26, 2009
Метки: 
(None)

Перед Вами старый вариант (V 1) этой страницы.
Последним вариантом будет в. 2, редактировалось Jan 06, 2019 (Разницы в выборках | )
история страницы взгляда | смотреть следующую версию >>

inet_aton

CREATE OR REPLACE FUNCTION inet_aton(text) RETURNS bigint AS '
SELECT
split_part($1,''.'',1)::int8*(256*256*256)+
split_part($1,''.'',2)::int8*(256*256)+
split_part($1,''.'',3)::int8*256+
split_part($1,''.'',4)::int8;
' LANGUAGE 'SQL';

inet_ntoa

CREATE OR REPLACE FUNCTION inet_ntoa(bigint) RETURNS text AS '
SELECT (($1>>24) & 255::int8) || ''.'' ||
(($1>>16) & 255::int8) || ''.'' ||
(($1>>8) & 255::int8) || ''.'' ||
($1 & 255::int8) as result
'
LANGUAGE 'SQL';

Пример:

SELECT INET_ATON('127.0.0.1');
inet_aton
————
2130706433
(1 row)
SELECT INET_NTOA(2130706433);
inet_ntoa
———-
127.0.0.1
(1 row)

INET_ATON() не воспринимает корректно краткую запись IP-адресов
запрос SELECT INET_ATON('127.1') не будет работоспособным.

Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5 Build:#805 Apr 26, 2007) - Запрос Bug/feature - Связаться с администраторами