From: | Arturo Munive <arturomunive(at)gmail(dot)com> |
---|---|
To: | "Javier Chávez B(dot)" <jchavezb(at)gmail(dot)com> |
Cc: | Juan Martínez <jeugenio(at)umcervantes(dot)cl>, brulics(at)gmail(dot)com, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Recomendaciones sobre el uso de vistas.] |
Date: | 2007-08-10 16:55:11 |
Message-ID: | 46BC986F.1000603@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Javier Chávez B. escribió:
> insisto con el tema vistas.. creo que si se hace sobre
> una tabla de uso frecuente en transacciones no es lo mejor..
> independiente
> del motor que uses!!
Tu escribiste esto:
-------------------
porque al menos en sqlserver las vistas son muy costosas...
imaginate consultas sobre una tabla que contiene la facturacion de un
cliente, primero forma "la tabla virtual" (costoso)
y despues tu consultas sobre ello!!!.
-------------------
Pero hasta donde yo tenia entendido en postgres no se consulta los datos
hasta que no se hala reescrito la vista.
Osea a ver si me explico:
tenemos una tabla de 10 000 registros con columnas
col_a
col_b
col_c
si tenemos una "vista" algo asi como
CREATE VIEW vista AS select col_a, col_b FROM tabla WHERE alguna_condicion"
y luego hacemos un select
SELECT * FROM vista WHERE otra_condicion
entonces en SQL Server los pasos son:
1 resuelve la vista (ejm trae 5000 registros por el filtro de la primera
condicion)
luego a este conjunto de resultados aplica la otra_condicion y devuelve
25 resultados (por ejemplo)
Resultado: leiste 5025 registros para traer 25.
Luego si no estoy mal en PostgreSQL
Se arma una consulta con la definicion de la vista
y en el where se tiene
... WHERE alguna_condicion AND otra_condicion
y probablemente se lean menos registros, es decir postgres no lee
primero la vista complea y luego filtra sobre ella
si no que arma un filtro compuesto por el de la vista + el de la
consulta sobre la vista
No es asi???? tal ves alguien lo pùeda explicar mejor que yo
Quizá Juan Martinez (parece que para analogías es bueno ;) )
From | Date | Subject | |
---|---|---|---|
Next Message | Carlos Badilla | 2007-08-10 16:58:29 | Conexión a Postgresql 8.2.4 desde Netbeans 5.5.1 |
Previous Message | Jaime Casanova | 2007-08-10 16:49:41 | Re: Como insertar registros |