From: | "sandrigo(dot)lezcano(at)gmail(dot)com" <sandrigo(dot)lezcano(at)gmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Indices de um campo STRINGs (varchar, text,..) |
Date: | 2006-05-25 14:38:36 |
Message-ID: | 1a5d58e60605250738m5d8a2e49ydb2c5c6dcef04b08@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Qual seria la mejor manera de indexar um campo STRING???
tipo:
direccion VARCHAR(30)
para luego usarlo en una consulta tipo:
SELECT... ...direccion ILIKE '%' || 'BLAH' || '%'
y en este caso si existiese un indice _direccion_idx
CREATE INDEX tbblah_direccion_idx ON tbblah(direccion)
si fuese un R-Tree
CREATE INDEX name ON table USING RTREE (column);
podria usar un ILIKE '%' || 'BLAH' sin problemas..
y un B-Tree me serviria para operaciones ( <, <=, =, >=, > )
..en cap. "11.8. Operator Classes" encontre
CREATE INDEX idx_tb ON tb (col varchar_pattern_ops);
pero en este caso NO puedo usar "C"...???????
obvio!! por "sentido comun" crear un YA indice con lower(),upper()
CREATE INDEX idx_tb_lower_col1 ON tb (lower(col1));
y usar el LIKE en lugar del ILIKE (.. creo q el rendimiento seria mejor!! )
Alguien tendria una explicacion un poco mas clara y sencilla
para este tipo de situacion..???
...direccion ILIKE '%' || 'BLAH' || '%'
Att
--
_________________________________________________
sandrigo(dot)lezcano(at)gmail(dot)com Mobile: 11 8431-7739
BSc in Computer Science Pinheiros - São Paulo
===========================================
C/VisualFox.developer | PostgreSQL.dba | J2ME.researcher
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2006-05-25 14:46:09 | Re: Indices de um campo STRINGs (varchar, text,..) |
Previous Message | deepthroat | 2006-05-25 14:15:34 | Re: Problemas con columna string |