Re: int to inet conversion [or Re: inet to bigint?]
От | Andrew Dunstan |
---|---|
Тема | Re: int to inet conversion [or Re: inet to bigint?] |
Дата | |
Msg-id | 4399B2F0.5040205@dunslane.net обсуждение исходный текст |
Ответ на | Re: int to inet conversion [or Re: inet to bigint?] (Kai <kai@xs4all.net>) |
Список | pgsql-hackers |
How do you intend to handle the mask and family parts of the object in converting it to an int, not to mention the ipv6 difficulties you mention? A better way might be to add some extra functions, ISTM. cheers andrew Kai wrote: >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 > >---------------------------(end of broadcast)--------------------------- >TIP 3: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faq > > >
В списке pgsql-hackers по дате отправления: