code: func setFlag4FloorAndCeil(tp *types.FieldType, arg Expression) {
  	fieldTp := arg.GetType()
  	if (fieldTp.Tp == mysql.TypeLong || fieldTp.Tp == mysql.TypeNewDecimal) && mysql.HasUnsignedFlag(fieldTp.Flag) {
  		tp.Flag |= mysql.UnsignedFlag
  	}
  	// TODO: when argument type is timestamp, add not null flag.
  }
docs: // setFlag4FloorAndCeil sets return flag of FLOOR and CEIL.