Thread: Datatype Inet and Searching
<div class="Section1"><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial"> </span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">Dear Users,</span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial"> </span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">I am very new to using the inet data type and I have a database with a list of CIDRs in it</span></font><pclass="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">And I was hoping to be able to do some kind of select statement that would pull the record</span></font><pclass="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">That the IP given is located in for example. If in my database I have a record like:</span></font><p class="MsoNormal"><fontface="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial"> </span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">Id cidr name</span></font><p class="MsoNormal"><font face="Arial" size="2"><spanstyle="font-size:10.0pt; font-family:Arial">1 10.0.0.0/30 user1</span></font><p class="MsoNormal"><font face="Arial" size="2"><spanstyle="font-size:10.0pt; font-family:Arial">2 10.0.0.4/30 user2</span></font><p class="MsoNormal"><font face="Arial" size="2"><spanstyle="font-size:10.0pt; font-family:Arial">3 10.0.0.8/30 user3</span></font><p class="MsoNormal"><font face="Arial" size="2"><spanstyle="font-size:10.0pt; font-family:Arial"> </span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">I was hoping to be able to do something like:</span></font><p class="MsoNormal"><font face="Arial" size="2"><spanstyle="font-size:10.0pt; font-family:Arial">Select * from mytable where cidr <<=’10.0.0.5’</span></font><p class="MsoNormal"><font face="Arial"size="2"><span style="font-size:10.0pt; font-family:Arial"> </span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">And the database would return only record 2 since it knows that 10.0.0.5 is contained only within record2.</span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">I can’t seem to figure out the correct syntax to make this type of query happen. Any help would greatly</span></font><pclass="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">Be appreciated.</span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial"> </span></font><p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10.0pt; font-family:Arial">Devin Atencio</span></font></div>
Devin Atencio wrote: > > > Dear Users, > > > > I am very new to using the inet data type and I have a database with a > list of CIDRs in it > > And I was hoping to be able to do some kind of select statement that > would pull the record > > That the IP given is located in for example. If in my database I have a > record like: > > > > Id cidr name > > 1 10.0.0.0/30 user1 > > 2 10.0.0.4/30 user2 > > 3 10.0.0.8/30 user3 > > > > I was hoping to be able to do something like: > > Select * from mytable where cidr <<=’10.0.0.5’ select * from mytable where cider >>= '10.0.0.5' The operation a >>= b mean: a contain or is equal b. Regards Gaetano Mendola
Devin Atencio wrote: > Dear Users, > > I am very new to using the inet data type and I have a database with a > list of CIDRs in it > > And I was hoping to be able to do some kind of select statement that > would pull the record > > That the IP given is located in for example. If in my database I have > a record like: > > Id cidr name > > 1 10.0.0.0/30 user1 > > 2 10.0.0.4/30 user2 > > 3 10.0.0.8/30 user3 > > I was hoping to be able to do something like: > > Select * from mytable where cidr <<=’10.0.0.5’ > > And the database would return only record 2 since it knows that > 10.0.0.5 is contained only within record 2. > > I can’t seem to figure out the correct syntax to make this type of > query happen. Any help would greatly > > Be appreciated. > > Devin Atencio > Select * from mytable where cidr >>= ’10.0.0.5’ or Select * from mytable where ’10.0.0.5' <<= cidr -- Guy Fraser Network Administrator The Internet Centre 780-450-6787 , 1-888-450-6787 There is a fine line between genius and lunacy, fear not, walk the line with pride. Not all things will end up as you wanted, but you will certainly discover things the meek and timid will miss out on.