A class to be used for reordering the terms in the where clauses. More...
#include <query.h>
Public Member Functions | |
virtual double | operator() (const ibis::qExpr *ex) const |
Generate a weight based on estimated query processing costs. More... | |
weight (const ibis::part *ds) | |
A class to be used for reordering the terms in the where clauses.
|
virtual |
Generate a weight based on estimated query processing costs.
This function produces consistent result only for operators AND and OR. It assumes the cost of evaluating the negation to be zero.
Implements ibis::qExpr::weight.
References ibis::part::estimateCost(), ibis::qExpr::getLeft(), ibis::qExpr::getRight(), ibis::qExpr::getType(), ibis::part::nRows(), ibis::part::patternSearch(), and ibis::part::stringSearch().