在Postgresql中按顺序排序IP地址?

时间:2010-04-15 15:35:06

标签: sql postgresql ip-address sql-order-by

我还有一个问题,我希望对IP地址列表进行排序。

Postgresql中是否有任何函数可以像MySql中的INET_ATON一样使用该命令?

我目前的IP是字符串格式。

THX。

Narglix

2 个答案:

答案 0 :(得分:7)

您可以使用以下内容订购您的IP地址栏IP_Address

SELECT * FROM MyTable ORDER BY inet(IP_Address)

有关详细信息,请参阅documnetation

修改

这实际上不是一个函数,而是为IP地址转换为postgres集成类型的类型。

答案 1 :(得分:0)

我必须做类似的事情,将IPv4地址存储为表中的整数,并且能够 使用'0.0.0.0'::inet + num技巧。

所以devaddr是表interface中的一列,我做了:

select  distinct ('0.0.0.0'::inet + devaddr) as addr from interface order by addr;