PostgreSQL学习篇9.12 网络地址类型

PostgreSQL提供了专门的数据类型存储IPv4,IPv6和MAC地址。

cidr:IPv4或IPv6的网络地址
inet:IPv4或IPv6的网络地址或主机地址
macaddr:以太网MAC地址

示例:
postgres=# select '186.168.100.15'::cidr;
       cidr       
-------------------
 186.168.100.15/32
(1 row)

postgres=# select '186.168.100.15'::inet;
      inet     
----------------
 186.168.100.15
(1 row)

IPv6标准地址表示方式:分为8组,每组为4个十六进制数。pg中输入的时候,如果某组为0,那么可以使用::代替,但是只能替换一次。前导0可以省略。

postgres=# select '::ffff:186.168.100.14'::cidr;
           cidr           
---------------------------
 ::ffff:186.168.100.14/128
(1 row)

postgres=# select '00e04c757d5a'::macaddr;
      macaddr     
-------------------
 00:e0:4c:75:7d:5a
(1 row)