|
Home > Archive > PostgreSQL SQL > April 2006 > Reverse Index ... how to ...
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
Reverse Index ... how to ...
|
|
| Marc G. Fournier 2006-04-05, 1:41 pm |
|
I'm still searching through Google and whatnot, but not finding anything
off the bat ... is there some way of creating a 'REVERSE INDEX' on a
column in a table?
For instance, when I do a 'CLUSTER' to sort a table based on an INDEX, I'd
like to sort it in reverse order, so would need the INDEX to go from
'GREATEST to LOWEST', vs 'LOWEST to GREATEST' ...
Thx
----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664
---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings
| |
| Oleg Bartunov 2006-04-05, 1:41 pm |
| On Wed, 5 Apr 2006, Marc G. Fournier wrote:
>
> I'm still searching through Google and whatnot, but not finding anything off
> the bat ... is there some way of creating a 'REVERSE INDEX' on a column in a
> table?
>
> For instance, when I do a 'CLUSTER' to sort a table based on an INDEX, I'd
> like to sort it in reverse order, so would need the INDEX to go from
> 'GREATEST to LOWEST', vs 'LOWEST to GREATEST' ...
use something like
select * into new_table from old_table order by some_key desc;
>
> Thx
>
> ----
> Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
> Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
>
Regards,
Oleg
____________________
____________________
____________________
_
Oleg Bartunov, Research Scientist, Head of AstroNet (www.astronet.ru),
Sternberg Astronomical Institute, Moscow University, Russia
Internet: oleg@sai.msu.su, http://www.sai.msu.su/~megera/
phone: +007(495)939-16-83, +007(495)939-23-83
---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings
| |
| Tom Lane 2006-04-05, 8:27 pm |
| "Marc G. Fournier" <scrappy@postgresql.org> writes:
> I'm still searching through Google and whatnot, but not finding anything
> off the bat ... is there some way of creating a 'REVERSE INDEX' on a
> column in a table?
> For instance, when I do a 'CLUSTER' to sort a table based on an INDEX, I'd
> like to sort it in reverse order, so would need the INDEX to go from
> 'GREATEST to LOWEST', vs 'LOWEST to GREATEST' ...
You shouldn't need to worry about that during CLUSTER, as the system is
perfectly capable of scanning an index in either forward or backward
order at runtime. For example,
regression=# explain select * from tenk1 order by unique1;
QUERY PLAN
------------------------------------------------------------------------------------
Index Scan using tenk1_unique1 on tenk1 (cost=0.00..1572.00 rows=10000 width=244)
(1 row)
regression=# explain select * from tenk1 order by unique1 desc;
QUERY PLAN
---------------------------------------------------------------------------------------------
Index Scan Backward using tenk1_unique1 on tenk1 (cost=0.00..1572.00 rows=10000 width=244)
(1 row)
regards, tom lane
---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?
http://www.postgresql.org/docs/faq
| |
| Marc G. Fournier 2006-04-05, 8:27 pm |
| On Wed, 5 Apr 2006, Tom Lane wrote:
> "Marc G. Fournier" <scrappy@postgresql.org> writes:
>
>
> You shouldn't need to worry about that during CLUSTER, as the system is
> perfectly capable of scanning an index in either forward or backward
> order at runtime. For example,
>
> regression=# explain select * from tenk1 order by unique1;
> QUERY PLAN
> ------------------------------------------------------------------------------------
> Index Scan using tenk1_unique1 on tenk1 (cost=0.00..1572.00 rows=10000 width=244)
> (1 row)
>
> regression=# explain select * from tenk1 order by unique1 desc;
> QUERY PLAN
> ---------------------------------------------------------------------------------------------
> Index Scan Backward using tenk1_unique1 on tenk1 (cost=0.00..1572.00 rows=10000 width=244)
> (1 row)
Perfect, that was what I was looking for, thx ...
----
Marc G. Fournier Hub.Org Networking Services (http://www.hub.org)
Email: scrappy@hub.org Yahoo!: yscrappy ICQ: 7615664
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster
|
|
|
|
|