diff options
Diffstat (limited to 'sql/field.h')
-rw-r--r-- | sql/field.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/sql/field.h b/sql/field.h index 7d60e0953f8..36cd2461f13 100644 --- a/sql/field.h +++ b/sql/field.h @@ -4002,6 +4002,8 @@ uint gis_field_options_read(const uchar *buf, size_t buf_len, class Field_enum :public Field_str { static void do_field_enum(Copy_field *copy_field); + bool can_optimize_range_or_keypart_ref(const Item_bool_func *cond, + const Item *item) const; protected: uint packlength; public: @@ -4078,7 +4080,10 @@ public: const uchar *from_end, uint param_data); bool can_optimize_keypart_ref(const Item_bool_func *cond, - const Item *item) const; + const Item *item) const + { + return can_optimize_range_or_keypart_ref(cond, item); + } bool can_optimize_group_min_max(const Item_bool_func *cond, const Item *const_item) const { @@ -4093,7 +4098,10 @@ public: } bool can_optimize_range(const Item_bool_func *cond, const Item *item, - bool is_eq_func) const; + bool is_eq_func) const + { + return can_optimize_range_or_keypart_ref(cond, item); + } private: int save_field_metadata(uchar *first_byte); uint is_equal(Create_field *new_field); |