PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

come eseguire query per inet/cidr min o max con postgres

Puoi utilizzare le funzioni esistenti network_smaller(inet, inet) e network_larger(inet, inet) per definire i tuoi aggregati:

create aggregate min (inet) (
    sfunc = network_smaller,
    stype = inet);

create aggregate max (inet) (
    sfunc = network_larger,
    stype = inet);

select min(d) min, max(d) max
from temp;

   min    |    max     
----------+------------
 1.1.10.2 | 1.1.10.100
(1 row)