Home Page for the TeradataForum
 

Archives of the TeradataForum

Message Posted: Fri, 11 Jun 2004 @ 13:21:43 GMT


     
  <Prev Next>   <<First <Prev Next> Last>>  


Subj:   Re: Performance Improvement on this Query without Collecting Statistics
 
From:   Geoffrey Rommel

  FROM DAILY_SPEND s
JOIN DATE dt on dt.DateID = s.DateID
 


You didn't mention which version of Teradata you're running. V2R4.1 and earlier versions may produce a better query plan with the comma syntax (from daily_spend s, "date" dt where ...).


  On the DATE side, you can aggregate on the BCWEEKID such that you only have one row per BCWEEKID with a min date representing the beginning of the week and a max date representing the end of the week. You could then change the equality compare in the where clause to a BETWEEN.  


A fine suggestion. If you take this approach, you might also try a value-ordered index on the dates -- something like this:

     create index (min_date, max_date) order by values(min_date) on weekly_spend;
     collect stats on weekly_spend index(min_date, max_date);

Come to think of it, a value-ordered date index might help no matter what.



     
  <Prev Next>   <<First <Prev Next> Last>>  
 
 
 
 
 
 
 
 
  
  Top Home Privacy Feedback  
 
 
Copyright for the TeradataForum (TDATA-L), Manta BlueSky    
Copyright 2016 - All Rights Reserved    
Last Modified: 15 Jun 2023