From: | Gregorio Diaz <gregorio_diaz(at)yahoo(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Consulta en SQL |
Date: | 2005-10-11 16:42:04 |
Message-ID: | 20051011164204.49459.qmail@web36203.mail.mud.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola mundo
Disculpen si esta pregunta es muy tonta, pero es que
soy muy nuevo en SQL y en PostgreSQL.
Tengo una consulta similar a la siguiente:
SELECT c1, c2, c3, c4, c5 FROM clientes WHERE
LOWER(TO_ASCII(c1)) LIKE TO_ASCII(%palabra%)
OR LOWER(TO_ASCII(c2)) LIKE TO_ASCII(%palabra%)
OR LOWER(TO_ASCII(c3)) LIKE TO_ASCII(%palabra%)
OR LOWER(TO_ASCII(c4)) LIKE TO_ASCII(%palabra%)
OR LOWER(TO_ASCII(c5)) LIKE TO_ASCII(%palabra%) etc.
La idea básica de esta búsqueda es encontrar los
clientes que contengan una palabra, o unas letras en
cualquier campo varchar de la tabla clientes (sin
importar cuál), sin importar mayúsculas ni minúsculas
ni tildes.
Notas:
- La expresión palabra ya se ha pasado a minúsculas en
el Front-End
- La tabla puede tener de 20 o 30 campos varchar y
supongo que no sería lógico crear índices a todos
ellos.
¿Cómo quedaría mucho más optima esta búsqueda?
Muchas gracias
__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
Regístrate ya - http://correo.espanol.yahoo.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Grover Navia | 2005-10-11 17:12:51 | Funciones de |
Previous Message | luis gomez | 2005-10-11 16:25:07 | configuracion de postgres para adminitir otros usuarios desde la web |