Re: Postgresql 11.3 doesn't use gist index on polygon column
От | Tom Lane |
---|---|
Тема | Re: Postgresql 11.3 doesn't use gist index on polygon column |
Дата | |
Msg-id | 1833085.1668700376@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Postgresql 11.3 doesn't use gist index on polygon column (Вадим Самохин <samokhinvadim@gmail.com>) |
Ответы |
Re: Postgresql 11.3 doesn't use gist index on polygon column
|
Список | pgsql-general |
=?UTF-8?B?0JLQsNC00LjQvCDQodCw0LzQvtGF0LjQvQ==?= <samokhinvadim@gmail.com> writes: > 6. But postgresql still doesn't want to use my index: > postgres=# explain analyze select * from zonez where '(2,2)'::point <@ p; It can't, because "polygon @> point" isn't one of the operators supported by that opclass. You could use a polygon comparison: =# \dAo gist poly_ops List of operators of operator families AM | Operator family | Operator | Strategy | Purpose ------+-----------------+----------------------+----------+---------- gist | poly_ops | <<(polygon,polygon) | 1 | search gist | poly_ops | &<(polygon,polygon) | 2 | search gist | poly_ops | &&(polygon,polygon) | 3 | search gist | poly_ops | &>(polygon,polygon) | 4 | search gist | poly_ops | >>(polygon,polygon) | 5 | search gist | poly_ops | ~=(polygon,polygon) | 6 | search gist | poly_ops | @>(polygon,polygon) | 7 | search gist | poly_ops | <@(polygon,polygon) | 8 | search gist | poly_ops | &<|(polygon,polygon) | 9 | search gist | poly_ops | <<|(polygon,polygon) | 10 | search gist | poly_ops | |>>(polygon,polygon) | 11 | search gist | poly_ops | |&>(polygon,polygon) | 12 | search gist | poly_ops | <->(polygon,point) | 15 | ordering (13 rows) regards, tom lane
В списке pgsql-general по дате отправления: