diff options
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r-- | sql/sql_select.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index c4f03cf2c4f..eacebcb498a 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -10146,7 +10146,9 @@ return_zero_rows(JOIN *join, select_result *result, List<TABLE_LIST> &tables, TABLE_LIST *table; while ((table= ti++)) mark_as_null_row(table->table); // All fields are NULL - if (having && having->val_int() == 0) + if (having && + !having->walk(&Item::clear_sum_processor, FALSE, NULL) && + having->val_int() == 0) send_row=0; } if (!(result->send_fields(fields, |