Re: Duda sobre ejecucion de consulta

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Sergio Torres <sergiotorresm(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Duda sobre ejecucion de consulta
Date: 2008-03-11 11:52:52
Message-ID: 20080311115252.GD6767@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Sergio Torres escribió:
> Hola lista, tengo una gran duda y ojalas ustedes puedan ayudarme a
> resolverla. Como procesa internamente postgresql la sentencia WHERE con sus
> parametros asociados???, por lo que he leido me parece que con todo lo
> asociado al WHERE va creando reglas (como create rule) para que después sean
> procesadas en la fase de reescritura de la consulta. Estoy muy perdido en
> mi apreciación ??

Totalmente perdido.

De partida WHERE no es una sentencia; es una clausula. La diferencia es
que la sentencia es algo que se ejecuta, mientras que la clausula es un
condicionante de una sentencia.

Lo que se hace con el WHERE es ponerlo en el whereClause del nodo que
representa el SELECT (suponiendo que hablemos de SELECT -- porque
tambien pueden haber clausulas WHERE en CREATE INDEX y otros nodos).
Una vez ahi, pasará por procesamiento de varias clases (analisis,
reescritura, optimizador, ejecutor).

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message MIGUEL CANCHAS 2008-03-11 13:31:03 RE: cambiar encoding
Previous Message Raul Lapitzondo 2008-03-11 11:00:03 Re: Funcion SQL mas lenta que un SQL