![]() |
MySQL 8.0.29
Source Code Documentation
|
#include "sql/join_optimizer/interesting_orders.h"
#include <algorithm>
#include <functional>
#include <type_traits>
#include "sql/item.h"
#include "sql/item_func.h"
#include "sql/item_sum.h"
#include "sql/join_optimizer/bit_utils.h"
#include "sql/join_optimizer/print_utils.h"
#include "sql/parse_tree_nodes.h"
#include "sql/sql_class.h"
Namespaces | |
namespace | anonymous_namespace{interesting_orders.cc} |
Functions | |
template<class T > | |
Bounds_checked_array< T > | anonymous_namespace{interesting_orders.cc}::DuplicateArray (THD *thd, Bounds_checked_array< T > array) |
bool | anonymous_namespace{interesting_orders.cc}::OrderingsAreEqual (Ordering a, Ordering b) |
bool | IsGrouping (Ordering ordering) |
static bool | Contains (Ordering prefix, ItemHandle item) |
Does the element already exist in given ordering? Unlike ImpliedByEarlierElements, only counts literal item duplicates, not items that are redundant due to functional dependencies. More... | |
static void | DeduplicateOrdering (Ordering *ordering) |
Remove duplicate entries from an ordering, in-place. More... | |
Variables | |
constexpr int | anonymous_namespace{interesting_orders.cc}::kMaxNFSMStates = 200 |
constexpr int | anonymous_namespace{interesting_orders.cc}::kMaxDFSMStates = 2000 |
|
static |
Does the element already exist in given ordering? Unlike ImpliedByEarlierElements, only counts literal item duplicates, not items that are redundant due to functional dependencies.
|
static |
Remove duplicate entries from an ordering, in-place.
bool IsGrouping | ( | Ordering | ordering | ) |