My Project
Public Member Functions | Protected Attributes
Item_sum_hybrid Class Reference
Inheritance diagram for Item_sum_hybrid:
Item_sum Item_result_field Item Item_sum_max Item_sum_min

List of all members.

Public Member Functions

 Item_sum_hybrid (Item *item_par, int sign)
 Item_sum_hybrid (THD *thd, Item_sum_hybrid *item)
bool fix_fields (THD *, Item **)
void setup_hybrid (Item *item, Item *value_arg)
void clear ()
double val_real ()
longlong val_int ()
longlong val_time_temporal ()
longlong val_date_temporal ()
my_decimalval_decimal (my_decimal *)
bool get_date (MYSQL_TIME *ltime, uint fuzzydate)
bool get_time (MYSQL_TIME *ltime)
void reset_field ()
Stringval_str (String *)
bool keep_field_type (void) const
enum Item_result result_type () const
enum enum_field_types field_type () const
void update_field ()
void min_max_update_str_field ()
void min_max_update_temporal_field ()
void min_max_update_real_field ()
void min_max_update_int_field ()
void min_max_update_decimal_field ()
void cleanup ()
bool any_value ()
void no_rows_in_result ()
Fieldcreate_tmp_field (bool group, TABLE *table)

Protected Attributes

Item_cachevalue
Item_cachearg_cache
Arg_comparatorcmp
Item_result hybrid_type
enum_field_types hybrid_field_type
int cmp_sign
bool was_values

Member Function Documentation

Todo:
optimize: do not get result_field in case of args[0] is NULL

Mark an aggregate as having no rows.

This function is called by the execution engine to assign 'NO ROWS FOUND' value to an aggregate item, when the underlying result set has no rows. Such value, in a general case, may be different from the default value of the item after 'clear()': e.g. a numeric item may be initialized to 0 by clear() and to NULL by no_rows_in_result().

Reimplemented from Item_sum.

void Item_sum_hybrid::setup_hybrid ( Item item,
Item value_arg 
)

MIN/MAX function setup.

Parameters:
itemargument of MIN/MAX function
value_argcalculated value of MIN/MAX function

Setup cache/comparator of MIN/MAX functions. When called by the copy_or_same function value_arg parameter contains calculated value of the original MIN/MAX object and it is saved in this object's cache.

longlong Item_sum_hybrid::val_date_temporal ( ) [virtual]

Return date value of item in packed longlong format.

Reimplemented from Item.

longlong Item_sum_hybrid::val_time_temporal ( ) [virtual]

Return time value of item in packed longlong format.

Reimplemented from Item.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines