Re: Aggregate Network Address functions? - Mailing list pgsql-novice

From Tom Lane
Subject Re: Aggregate Network Address functions?
Date
Msg-id 13506.1019149438@sss.pgh.pa.us
Whole thread Raw
In response to Aggregate Network Address functions?  (April L <april@i-netco.com>)
List pgsql-novice
April L <april@i-netco.com> writes:
> I tried

> SELECT MAX(masklen(ip))
> FROM nlist
> WHERE ip >> '208.253.55.61';

> That returns an integer of the largest mask length... such as /24 or /32.

> How would I get the other fields associated with the record that has the
> largest mask length?

> Or, in general, how does one find the record with the largest value in a
> column and get all the columns from that particular record?

The usual recommendation is

SELECT * FROM nlist
WHERE ip >> '208.253.55.61'
ORDER BY masklen(ip) DESC
LIMIT 1;

I'm not sure what people do in databases that don't have LIMIT; there
doesn't seem to be any nice solution in bog-standard SQL.

            regards, tom lane

pgsql-novice by date:

Previous
From: April L
Date:
Subject: Aggregate Network Address functions?
Next
From: "samsom, debra"
Date:
Subject: Re: Multiple Primary Keys