summaryrefslogtreecommitdiff
path: root/sql/sql_select.cc
diff options
context:
space:
mode:
authorOleg Smirnov <olernov@gmail.com>2022-05-18 18:36:32 +0400
committerOleg Smirnov <olernov@gmail.com>2022-05-18 18:36:38 +0400
commit6791c6b603d3d8a7353441478725686a664cfb99 (patch)
tree4d938be0df08bb10bb303b0d0c4f38ad81a1eb3f /sql/sql_select.cc
parenta5dc12eefd4bea1c3f77d02c55d0d459b4ae0566 (diff)
downloadmariadb-git-bb-10.2-MDEV-24837.tar.gz
MDEV-24837 HAVING clause yields wrong resultsbb-10.2-MDEV-24837
Set items references to point to the temporary table fields when processing aggregate operations
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r--sql/sql_select.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 760730d799c..8adbe9ec78b 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -20550,6 +20550,8 @@ end_write_group(JOIN *join, JOIN_TAB *join_tab __attribute__((unused)),
}
copy_sum_funcs(join->sum_funcs,
join->sum_funcs_end[send_group_parts]);
+ if (join->current_ref_ptrs != join->items1)
+ join->set_items_ref_array(join->items1);
if (!join_tab->having || join_tab->having->val_int())
{
int error= table->file->ha_write_tmp_row(table->record[0]);