Re: Question about a CIDR based query
| От | siganos@gmail.com (George Siganos) |
|---|---|
| Тема | Re: Question about a CIDR based query |
| Дата | |
| Msg-id | ebba5a93.0406261506.7a0f7558@posting.google.com обсуждение исходный текст |
| Ответ на | Question about a CIDR based query (Georgos Siganos <siganos@gmail.com>) |
| Ответы |
Re: Question about a CIDR based query
|
| Список | pgsql-sql |
I did a vacuum analyze before I run the following explain
June_03=# explain select * from tmp where route >>='62.1.1.0/24'; QUERY PLAN
----------------------------------------------------------------Seq Scan on tmp (cost=0.00..606.60 rows=14544
width=33) Filter: (route >>= '62.1.1.0/24'::cidr)
(2 rows)
The select returns just one route,
Thanks
josh@agliodbs.com (Josh Berkus) wrote in message news:<200406250900.08312.josh@agliodbs.com>...
> Georgos,
>
> > select * from tmp where route >>= some_cidr
>
> Can you post an EXPLAIN ANALYZE for this? And when's the last time you ran
> ANALYZE on the table?
>
> > The index on route is not used and I get a sequential scan. The index is
> > used only for the <<= operator.
>
> Most likely Postgres thinks that the >>= query is returning 60% of your table,
> which makes indexes useless.
>
> --
> Josh Berkus
> Aglio Database Solutions
> San Francisco
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faqs/FAQ.html
В списке pgsql-sql по дате отправления: