MySQL 8.4.0
Source Code Documentation
SargablePredicate Struct Reference

A sargable (from “Search ARGument”) predicate is one that we can attempt to push down into an index (what we'd call “ref access” or “index range scan”/“quick”). More...

#include <make_join_hypergraph.h>

Public Attributes

int predicate_index
 
Fieldfield
 
Itemother_side
 
bool can_evaluate
 True if it is safe to evaluate "other_side" during optimization. More...
 

Detailed Description

A sargable (from “Search ARGument”) predicate is one that we can attempt to push down into an index (what we'd call “ref access” or “index range scan”/“quick”).

This structure denotes one such instance, precomputed from all the predicates in the given hypergraph.

Member Data Documentation

◆ can_evaluate

bool SargablePredicate::can_evaluate

True if it is safe to evaluate "other_side" during optimization.

It must be constant during execution. Also, it should not contain subqueries or stored procedures, which we do not want to execute during optimization.

◆ field

Field* SargablePredicate::field

◆ other_side

Item* SargablePredicate::other_side

◆ predicate_index

int SargablePredicate::predicate_index

The documentation for this struct was generated from the following file: