Re: int to inet conversion [or Re: inet to bigint?]
От | Kai |
---|---|
Тема | Re: int to inet conversion [or Re: inet to bigint?] |
Дата | |
Msg-id | 20051208153612.GF20706@xs4all.nl обсуждение исходный текст |
Ответы |
Re: int to inet conversion [or Re: inet to bigint?]
Re: int to inet conversion [or Re: inet to bigint?] Re: int to inet conversion [or Re: inet to bigint?] |
Список | pgsql-hackers |
Hello All, I've been pondering the discussed subject a few times, and came along a few things that I think are missing from the default set of typeconversions within postgres. After working regularly with inet values in sql, it would be nice to be able to do this: => select '192.168.1.1'::inet + 1 as result; result ------------- 192.168.1.2(1 row) => select '192.168.1.255'::inet - '192.168.1.0'::inet as difference; difference---------------- 255(1 row) or simply this: => select '192.168.1.1'::inet::bigint bigint ------------ 3232235777 In the old postgres 7.3 the data was stored in the database being a big integer anyway, but in the new ipv6 compatible stuff I lost track. I can probably write the functions in C if theres more interest in them, but I'm not on track on how to define all the casting stuff in the postgresql system tables, nor the sticky subject on how to handle ipv6. Or maybe someone else was pondering the idea too and is far better at writing C? :-) My conclusion is that the selects above should be among the default set of operations on inet values in PostgreSQL, being subtraction and addition. If not I'd like to be proven wrong. Regards, Kai
В списке pgsql-hackers по дате отправления: