↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
历史版本PostgreSQL 7.1 已于 2006 年 4 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本。

4.9. 网络地址类型函数 #

表 4.18. cidr 和 inet 操作符

操作符 描述 用法
< 小于 inet '192.168.1.5' < inet '192.168.1.6'
<= 小于或等于 inet '192.168.1.5' <= inet '192.168.1.5'
= 等于 inet '192.168.1.5' = inet '192.168.1.5'
>= 大于或等于 inet '192.168.1.5' >= inet '192.168.1.5'
> 大于 inet '192.168.1.5' > inet '192.168.1.4'
<> 不等于 inet '192.168.1.5' <> inet '192.168.1.4'
<< 被包含于 inet '192.168.1.5' << inet '192.168.1/24'
<<= 被包含于或等于 inet '192.168.1/24' <<= inet '192.168.1/24'
>> 包含 inet'192.168.1/24' >> inet '192.168.1.5'
>>= 包含或等于 inet '192.168.1/24' >>= inet '192.168.1/24'

inet 的所有操作符也都可以应用于 cidr 值。操作符 <<、 <<=、>> 和 >>= 测试子网包含:它们 只考虑两个地址的网络部分,忽略任何 主机部分,并判断一个网络部分是否与另一个相同 或是它的子网。

表 4.19. cidr 和 inet 函数

函数 返回类型 描述 示例 结果
broadcast ( inet ) inet 网络的广播地址 broadcast('192.168.1.5/24') 192.168.1.255/24
host ( inet ) text 以 text 形式抽取 IP 地址 host('192.168.1.5/24') 192.168.1.5
masklen ( inet ) integer 抽取网络掩码长度 masklen('192.168.1.5/24') 24
netmask ( inet ) inet 构造网络的网络掩码 netmask('192.168.1.5/24') 255.255.255.0
network ( inet ) cidr 抽取地址的网络部分 network('192.168.1.5/24') 192.168.1.0/24
text ( inet ) text 以文本形式提取 IP 地址和掩码长度 text(inet '192.168.1.5') 192.168.1.5/32
abbrev ( inet ) text 以文本形式提取缩写显示 abbrev(cidr '10.1.0.0/16') 10.1/16

inet 的所有函数也都可以应用于 cidr 值。 host()、 text() 和 abbrev() 函数主要用于提供替代的显示 格式。

表 4.20. macaddr 函数

函数 返回 描述 例子 结果
trunc(macaddr) macaddr 把最后 3 个字节置为零 trunc(macaddr '12:34:56:78:90:ab') 12:34:56:00:00:00


函数 trunc(macaddr) 返回一个把 最后 3 个字节置为 0 的 MAC 地址。这可以用于 把剩余的前缀与一个制造商关联起来。源代码发行版中的 contrib/mac 目录 包含一些用于创建和维护这种关联 表的工具。

macaddr类型还支持用于字典序排序的标准关系操作符(>、<=等)。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。