2010-05-21 223 views
7

有沒有簡單的方法將int轉換爲PostgreSQL中的IP地址?我能夠從IP去使用此代碼爲int:將int轉換爲IP地址

 
SELECT inet '1.2.3.4'-'0.0.0.0' 

這不起作用:

 
SELECT 16909060::inet 

我沒有看到文檔中任何事情。有誰知道如何做到這一點?

回答

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

這似乎適用於我。 – User1 2010-05-21 23:34:28

0

如果任何人試圖從包含IP地址的表中選擇和列被定義爲long,你可以轉換爲bigint而轉化工作。

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