Re: Postgresql INET select and default route ?
От | Albe Laurenz |
---|---|
Тема | Re: Postgresql INET select and default route ? |
Дата | |
Msg-id | A737B7A37273E048B164557ADEF4A58B53748A1C@ntex2010a.host.magwien.gv.at обсуждение исходный текст |
Ответ на | Postgresql INET select and default route ? (Tim Smith <randomdev4+postgres@gmail.com>) |
Ответы |
Re: Postgresql INET select and default route ?
|
Список | pgsql-general |
Tim Smith wrote: > create table test(a inet); > insert into test values ('0.0.0.0/0'); > insert into test values ('10.1.2.3'); > => select * from test; > a > ----------- > 0.0.0.0/0 > 10.1.2.3 > (2 rows) > > > This works as expected ..... > => select * from test where a <<= '10.1.2.3'; > a > ---------- > 10.1.2.3 > (1 row) > > > This does not work as expected .... > => select * from test where a <<= '11.1.2.3'; > a > --- > (0 rows) > > > Surely the second one should return the default route entry (i.e. 0.0.0.0/0) ? I am surprised that you don't expect "0.0.0.0/0" to be returned by the first query if you expect it to be returned by the second. Is that an oversicht? I guess your problem is a misunderstanding what the operator means: "<<=" is called "is contained by or equals". The definition (from the PostgreSQL source) is that x <<= y iff: - x has at least as many relevant bits as y and - all relevant bits of y are the same in x. So the following would produce what you expect: test=> select * from test where '11.1.2.3' <<= a; a ----------- 0.0.0.0/0 (1 row) Yours, Laurenz Albe
В списке pgsql-general по дате отправления: