[Pgsql-ayuda] Indices
Alvaro Herrera Munoz
alvherre@dcc.uchile.cl
Thu, 14 Aug 2003 11:49:18 -0400
On Thu, Aug 14, 2003 at 02:56:29PM +0000, mondino@solsoft.com.ar wrote:
> Como se que indices tiene una tabla?
> Algun comando, si es posible via ODBC. Gracias.
Via psql, haces \d <tabla> y te deberia mostrar los indices
(al menos en la version que yo tengo). Ejecuta psql -E y te va
a mostrar las consultas que hace para responderte el \d,
eso te puede servir de guia.
En cualquier caso algo como
regression=> select relname, indkey from pg_index join pg_class on (indexrelid=pg_class.oid) where indrelid='http'::regclass;
-[ RECORD 1 ]-------------
relname | idx_http
indkey | 1 2 5
-[ RECORD 2 ]-------------
relname | http_obj_id_date
indkey | 1 5
Aqui los indkey son los attnum de los atributos del indice, puedes verlo con
regression=> select attnum,attname from pg_attribute where attrelid='http'::regclass and attnum in (1, 2, 5);
attnum | attname
--------+-------------
1 | obj_id
2 | servidor_id
5 | date
(3 rows)
--
Alvaro Herrera (<alvherre[@]dcc.uchile.cl>)
www.google.com: interfaz de linea de comando para la web.