diff options
author | unknown <timour@askmonty.org> | 2013-02-07 15:33:24 +0200 |
---|---|---|
committer | unknown <timour@askmonty.org> | 2013-02-07 15:33:24 +0200 |
commit | e648ff111a1d3fe79b6bd4ff0a25e85d1b949fb2 (patch) | |
tree | b6bbc11cf7e2408fe0f18a33540bc35050ffb1e6 /sql/sql_error.cc | |
parent | c7fa9fa72b2df857dac33a76ea79d66e37918acb (diff) | |
download | mariadb-git-e648ff111a1d3fe79b6bd4ff0a25e85d1b949fb2.tar.gz |
MDEV-537 Make multi-column non-top level subqueries to be executed via index (index/unique subquery)
instead of single_select_engine
This task changes the IN-EXISTS rewrite for multi-column subqueries
"(a, b) IN (select b, c ...)" to work in the same way as for
single-column subqueries "a IN (select b ...) with respect to the
injection of NULL-rejecting predicates.
More specifically, the method
Item_in_subselect::create_row_in_to_exists_cond()
adds Item_is_not_null_test and Item_func_trig_cond only if the left
IN operand can be NULL. Not having these predicates when not necessary,
makes it possible to rewrite the subquery into a "unique_subquery" or
"index_subquery" when there is a suitable index on the only
subquery table.
Diffstat (limited to 'sql/sql_error.cc')
0 files changed, 0 insertions, 0 deletions