2010-05-21 16 views
7

¿Existe una manera fácil de convertir una int a una dirección IP en PostgreSQL? Yo era capaz de pasar de IP a int utilizando este código:Convirtiendo un int a una dirección IP

 
SELECT inet '1.2.3.4'-'0.0.0.0' 

Esto no funciona:

 
SELECT 16909060::inet 

no vi nada en la documentación. ¿Alguien sabe como hacer esto?

Respuesta

11
SELECT '0.0.0.0'::inet + 16909060 
+0

Eso pareció funcionar para mí. – User1

0

En el caso de cualquier otra persona está tratando de seleccionar de una tabla que contiene las direcciones IP y la columna se define como un long, puede convertir a bigint y la conversión va a funcionar.

select '0.0.0.0'::inet + cast(source_ip as bigint) from addresses;