Thread: cidr data type question
Hello. I have table with cidr data type column (table is white/black list of networks). Does it possible to query - is the some address contains in any cidr network in this table? (for all networks in the table do "contains or equals" http://www.postgresql.org/docs/8.4/interactive/functions-net.html ) -- Vasiliy G Tolstov <v.tolstov@selfip.ru> Selfip.Ru
Vasiliy G Tolstov wrote: > Hello. > I have table with cidr data type column (table is white/black list of > networks). > > Does it possible to query - is the some address contains in any cidr > network in this table? (for all networks in the table do "contains or equals" > > http://www.postgresql.org/docs/8.4/interactive/functions-net.html SELECT * FRMO mytable WHERE mytable.network >>= $1::INET; that will return all rows of mytable which have a subnet that includes the IP or subnet $1
В Пнд, 02/11/2009 в 00:34 -0800, John R Pierce пишет: > Vasiliy G Tolstov wrote: > > Hello. > > I have table with cidr data type column (table is white/black list of > > networks). > > > > Does it possible to query - is the some address contains in any cidr > > network in this table? (for all networks in the table do "contains or equals" > > > > http://www.postgresql.org/docs/8.4/interactive/functions-net.html > > SELECT * FRMO mytable WHERE mytable.network >>= $1::INET; > > that will return all rows of mytable which have a subnet that includes > the IP or subnet $1 > > > Thank You! Does i need to replace ::INET with ::CIDR ша ш гыу cidr data type or no? -- Vasiliy G Tolstov <v.tolstov@selfip.ru> Selfip.Ru
In article <1257149236.3426.9.camel@localhost>, Vasiliy G Tolstov <v.tolstov@selfip.ru> writes: > Hello. > I have table with cidr data type column (table is white/black list of > networks). > Does it possible to query - is the some address contains in any cidr > network in this table? (for all networks in the table do "contains or > equals" > http://www.postgresql.org/docs/8.4/interactive/functions-net.html > ) If you mess with IP addresses, you should have a look at the ip4r contrib module. Since I discovered it, I've never looked back at cidr/inet.
В Пнд, 02/11/2009 в 13:29 +0100, Harald Fuchs пишет: > In article <1257149236.3426.9.camel@localhost>, > Vasiliy G Tolstov <v.tolstov@selfip.ru> writes: > > > Hello. > > I have table with cidr data type column (table is white/black list of > > networks). > > > Does it possible to query - is the some address contains in any cidr > > network in this table? (for all networks in the table do "contains or > > equals" > > http://www.postgresql.org/docs/8.4/interactive/functions-net.html > > ) > > If you mess with IP addresses, you should have a look at the ip4r > contrib module. Since I discovered it, I've never looked back at > cidr/inet. > > Thank's but cidr solved fine my task -- Vasiliy G Tolstov <v.tolstov@selfip.ru> Selfip.Ru