27 void Item_func_elt::fix_length_and_dec()
32 if (agg_arg_charsets(collation, args+1, arg_count-1, MY_COLL_ALLOW_CONV, 1))
35 for (uint32_t i= 1 ; i < arg_count ; i++)
37 set_if_bigger(max_length,args[i]->max_length);
38 set_if_bigger(decimals,args[i]->decimals);
49 if ((tmp=(uint) args[0]->
val_int()) == 0 || tmp >= arg_count)
51 double result= args[tmp]->
val_real();
61 if ((tmp=(uint) args[0]->
val_int()) == 0 || tmp >= arg_count)
64 int64_t result= args[tmp]->
val_int();
75 if ((tmp=(uint) args[0]->
val_int()) == 0 || tmp >= arg_count)
80 result->set_charset(collation.collation);
virtual int64_t val_int()=0
virtual double val_real()=0
virtual String * val_str(String *str)=0
String * val_str(String *str)