Re: View based upon function won't use index on joins - Mailing list pgsql-performance

From Jonathan Foy
Subject Re: View based upon function won't use index on joins
Date
Msg-id 4b46b5f00911200701q288fa6afsafe4bc21f708fee3@mail.gmail.com
Whole thread Raw
In response to Re: View based upon function won't use index on joins  (Віталій Тимчишин <tivv00@gmail.com>)
Responses Re: View based upon function won't use index on joins  (Віталій Тимчишин <tivv00@gmail.com>)
List pgsql-performance
This seems to result in the same problem; should I attempt to pull for a specific id_nbr/id_qfr, postgres uses the index without a problem. If I try to join the two tables/views however, it insists on doing a sequential scan (actually two in this case) and will not use the index.  Any other ideas/explanations?

That being said, I probably need to look into arrays more.  I haven't used them at all in my relatively brief experience with postgres.  More research!

2009/11/20 Віталій Тимчишин <tivv00@gmail.com>
How about


CREATE OR REPLACE VIEW value_codes_view AS
select * from (

 SELECT value_codes.id_nbr,
      value_codes.id_qfr,
      (ARRAY[val_1_cd_1, ... , val_2_cd_12])[i] as value_code,
      (ARRAY[val_1_amt_1, ... , val_2_amt_12])[i] as value_amount,
   FROM value_codes, generate_series(1,24) i) a
where value_code is not null and value_code != '';
?

pgsql-performance by date:

Previous
From: Tom Lane
Date:
Subject: Re: [GENERAL] Strange performance degradation
Next
From: Matthew Wakeling
Date:
Subject: Re: Strange performance degradation