如何在 PostgreSQL 中查找 CIDR 输入的开始和结束 IP 地址

How to find Start and End IP address for CIDR input in PostgreSQL

我的 CIDR 输入为 10.0.0.0/28 我如何在该输入中找到开始和结束 IP 地址。 我手动理解 10.0.0.0 是起始地址 10.0.0.15 是结束 IP,在 PostgreSQL 中有什么方法可以找到它吗?

你的问题 10.0.0.10/28 是一个错误的 CIDR 输入。应该是10.0.0.0/28 您可以这样编写查询:

select 
host('10.0.0.0/28'::cidr) AS lower,
host(broadcast('10.0.0.0/28'::cidr)) AS upper 

更新的答案 - 如果输入为 inet 然后尝试这种方式

select 
host(network('10.0.0.10/28'::inet)) AS lower,
host(broadcast(network('10.0.0.10/28'::inet)::cidr)) AS upper 

DEMO