本文介绍了PolarDB PostgreSQL版(兼容Oracle)支持的网络地址函数和操作符。
IP 网络地址类型,cidr
和inet
,支持比较操作符表所示的常用比较操作符, 以及 IP 地址操作符表和 IP 地址的函数表所示的专用操作符和函数。
任何cidr
值都可以隐式地转换到inet
;因此,下面在inet
上操作的操作符和函数也可以在cidr
值上工作。 (对于inet
和cidr
有单独的函数,这是因为这两种情况的行为应该是不同的)此外,它允许将inet
值转换为cidr
。 当这样做的时候,子网掩码右边的任何位都被静默地置零,以创建一个有效的cidr
值。
IP 地址操作符
子网是否严格包含在子网中?这个操作符和后续的四个操作符测试子网包含情况。 它们只考虑两个地址的网络部分(忽略网络掩码右侧的任何位),并确定一个网络与另一个网络相同或者是相同的子网。
|
子网是否包含或等于子网?
|
子网是否严格包含子网?
|
子网是否包含或等于子网?
|
其中一个子网包含或等于另一个子网?
|
计算位 NOT.
|
计算位 AND.
|
计算位 OR.
|
向地址添加偏移量。
|
向地址添加偏移量。
|
从地址中减去偏移量。
|
计算两个地址的差值。
|
IP 地址的函数
创建缩略的文本显示格式。 (结果与
|
创建缩写的文本显示格式(缩写包括在子网掩码的右侧删除所有零字节)。
|
为地址的网络计算广播地址。
|
返回地址的系列:
|
返回IP地址文本,忽略子网掩码。
|
为地址的网络计算主机掩码。
|
计算包含两个给定网络的最小网络。
|
测试地址是否属于同一IP族。
|
以比特位返回子网掩码长度。
|
为地址的网络计算网络掩码。
|
返回地址的网络部分,将子网掩码右边的部分归零(这相当于将值转换为
|
设置
|
设置
|
以文本形式返回未缩写的IP地址和子网掩码长度(这与显式转换为
|
abbrev
、host
和text
函数主要用于为 IP 地址提供另一种显示格式。
MAC 地址类型, macaddr
和macaddr8
,支持比较操作符表中所示的常用比较操作符以及 MAC 地址函数表中所示的特殊函数。 此外,它们支持位元逻辑操作符~
, &
和 |
(NOT, AND 和 OR),就像上面对 IP 地址所示的那样。
MAC 地址函数
将地址的最后3个字节设置为零。其余的前缀可以与特定的制造商关联(使用本数据库中没有包含的数据)。
|
将地址的最后5个字节设置为零。其余的前缀可以与特定的制造商关联(使用本数据库中没有包含的数据)。
|
将地址的第7位设置为1,创建所谓的modified EUI-64,用于包含在IPv6地址中。
|