com.metamatrix.query.optimizer.relational.rules
Class JoinUtil

java.lang.Object
  extended by com.metamatrix.query.optimizer.relational.rules.JoinUtil

public class JoinUtil
extends java.lang.Object

Utility methods for query planning related to joins.

In some cases, a query plan can be made more optimal via a few possible criteria/join optimizations.


Method Summary
static JoinType getJoinTypePreventingCriteriaOptimization(PlanNode joinNode, java.util.Set<GroupSymbol> groups)
           
static boolean isNullDependent(QueryMetadataInterface metadata, java.util.Collection innerGroups, Criteria crit)
          Returns true if the given criteria can be anything other than false (or unknown) given all null values for elements in the inner groups
static boolean isNullDependent(QueryMetadataInterface metadata, java.util.Collection innerGroups, Expression expr)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

isNullDependent

public static boolean isNullDependent(QueryMetadataInterface metadata,
                                      java.util.Collection innerGroups,
                                      Criteria crit)
Returns true if the given criteria can be anything other than false (or unknown) given all null values for elements in the inner groups


isNullDependent

public static boolean isNullDependent(QueryMetadataInterface metadata,
                                      java.util.Collection innerGroups,
                                      Expression expr)

getJoinTypePreventingCriteriaOptimization

public static JoinType getJoinTypePreventingCriteriaOptimization(PlanNode joinNode,
                                                                 java.util.Set<GroupSymbol> groups)


Copyright © 2009. All Rights Reserved.