> try this :-D

> create or replace function indf(anyelement, anyelement) returns anyelement as
> $$
>   select $1 = $2 or ($1 is null and $2 is null);
> $$ language sql;
>
> CREATE VIEW view_circuit_with_status AS (
>    SELECT r.*,
>           s.circuit_status,
>           s.customer_id AS s_customer_id,
>           p.line_speed,
>           p.customer_id AS p_customer_id
>      FROM view_circuit r
>      JOIN view_circuit_product_main s
>        ON r.circuit_id = s.circuit_id
>       AND indf(r.customer_id, s.customer_id)
>      JOIN view_circuit_product p
>        ON r.circuit_id = p.circuit_id
>       AND indf(r.customer_id, s.customer_id)
>
> merlin

This doesn't do much good. This doesn't tell the planner that the 3 
customer_ids are actually of same value, and it therefore can't filter them as 
it sees fit.

Reply via email to