MySQL  8.0.28
Source Code Documentation
JoinPredicate Struct Reference

A specification that two specific relational expressions (e.g., two tables, or a table and a join between two other tables) should be joined together. More...

#include <access_path.h>

Public Attributes

RelationalExpressionexpr
 
double selectivity
 
size_t estimated_bytes_per_row
 
FunctionalDependencySet functional_dependencies
 
Mem_root_array< int > functional_dependencies_idx
 
int ordering_idx_needed_for_semijoin_rewrite = -1
 
Item ** semijoin_group = nullptr
 
int semijoin_group_size = 0
 

Detailed Description

A specification that two specific relational expressions (e.g., two tables, or a table and a join between two other tables) should be joined together.

The actual join conditions, if any, live inside the “expr” object, as does the join type etc.

Member Data Documentation

◆ estimated_bytes_per_row

size_t JoinPredicate::estimated_bytes_per_row

◆ expr

RelationalExpression* JoinPredicate::expr

◆ functional_dependencies

FunctionalDependencySet JoinPredicate::functional_dependencies

◆ functional_dependencies_idx

Mem_root_array<int> JoinPredicate::functional_dependencies_idx

◆ ordering_idx_needed_for_semijoin_rewrite

int JoinPredicate::ordering_idx_needed_for_semijoin_rewrite = -1

◆ selectivity

double JoinPredicate::selectivity

◆ semijoin_group

Item** JoinPredicate::semijoin_group = nullptr

◆ semijoin_group_size

int JoinPredicate::semijoin_group_size = 0

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