If it is EXISTS, there must be no aggregation.Subquery is IN/=ANY or EXISTS predicate.Optimizer enables subquery_to_derived=on.If it is impossible to transform to semijoin, try materialization method and transform judgment conditions.Mark whether subquery adopts the materialization scheme during execution. Set Subquery_strategy::CANDIDATE_FOR_SEMIJOIN and add sj_candidates.offset starts from the first line, and limit is not 0. offset and limit are valid for semjoin.Determine whether the result needs to be transformed to true or false, whether it is NULL, and whether antijoin or semijoin operation can be performed.The return value of the IN predicate is certain, not RAND.The parent query block does not prohibit semijoin.Neither parent query nor subquery can have straight join.The parent query also has at least one table.The strategy of the subquery is not specified (Subquery_strategy::UNSPECIFIED).At least one table is needed, rather than using "SELECT 1".External query blocks can support semijoins.The resolution phase involves Query_block::RESOLVE_CONDITION and Query_block::RESOLVE_JOIN_NEST and does not use the latest Hyper optimizer.Subquery has no HAVING or WINDOW functions.Subquery does not have implicit and explicit GROUP BY. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |