My Project
|
Public Member Functions | |
simple_sort_ctx (Explain_context_enum type_arg, const char *name_arg, context *parent_arg, const Explain_format_flags *flags, Explain_sort_clause clause) | |
virtual bool | add_join_tab (joinable_ctx *ctx) |
virtual bool | add_where_subquery (subquery_ctx *ctx, SELECT_LEX_UNIT *subquery) |
virtual bool | find_and_set_derived (context *subquery) |
virtual size_t | id (bool hide) |
virtual bool | cacheable () |
virtual bool | dependent () |
Protected Member Functions | |
virtual bool | format_body (Opt_trace_context *json, Opt_trace_object *obj) |
Protected Attributes | |
joinable_ctx * | join_tab |
Base class for CTX_ORDER_BY, CTX_GROUP_BY and node class for CTX_DISTINCT
This class represents context for simple ORDER BY/GROUP BY/DISTINCT clauses (the clause is effective for the single JOIN_TAB).
virtual bool opt_explain_json_namespace::simple_sort_ctx::add_join_tab | ( | joinable_ctx * | ctx | ) | [inline, virtual] |
Add a CTX_JOIN_TAB node to a CTX_JOIN node
ctx | CTX_JOIN_TAB node |
false | Ok |
true | Error |
Reimplemented from opt_explain_json_namespace::context.
virtual bool opt_explain_json_namespace::simple_sort_ctx::add_where_subquery | ( | subquery_ctx * | ctx, |
SELECT_LEX_UNIT * | subquery | ||
) | [inline, virtual] |
Associate WHERE subqueries of given context and unit with this object
ctx | Context of WHERE subquery |
subquery | For CTX_JOIN_TAB: match given unit with a previously collected by the register_where_subquery function. |
Reimplemented from opt_explain_json_namespace::context.
virtual bool opt_explain_json_namespace::simple_sort_ctx::find_and_set_derived | ( | context * | subquery | ) | [inline, virtual] |
Try to associate a derived subquery node with this or underlying node
subquery | Derived subquery node |
true | Success |
false | Can't associate: this node or its child nodes are not derived from the subquery |
Reimplemented from opt_explain_json_namespace::context.
virtual bool opt_explain_json_namespace::simple_sort_ctx::format_body | ( | Opt_trace_context * | json, |
Opt_trace_object * | obj | ||
) | [inline, protected, virtual] |
Format JSON object body
json | Formatter |
obj | Object of this body |
false | Ok |
true | Error |
Implements opt_explain_json_namespace::context.
virtual size_t opt_explain_json_namespace::simple_sort_ctx::id | ( | bool | hide | ) | [inline, virtual] |
Analogue of the "id" column in the traditional EXPLAIN output
hide | if true, ban the output of K_SELECT_ID JSON property in the underlying table_with_where_and_derived_ctx objects |
Implements opt_explain_json_namespace::context.