summaryrefslogtreecommitdiff
path: root/sql/item.h
diff options
context:
space:
mode:
authorholyfoot/hf@deer.(none) <>2006-11-17 19:01:35 +0400
committerholyfoot/hf@deer.(none) <>2006-11-17 19:01:35 +0400
commit7d190dd6b11365528f2341699c24812dd63f6165 (patch)
tree584324c076d2a4506331c1fb96cf95d2c50a85e3 /sql/item.h
parentdd0b81885d7ddc33e5c9acaffbdbf8b35cde5894 (diff)
parent0357510dca406263d00a8bd1007e4f8784f658b8 (diff)
downloadmariadb-git-7d190dd6b11365528f2341699c24812dd63f6165.tar.gz
Merge bk@192.168.21.1:mysql-5.1-opt
into mysql.com:/home/hf/work/mysql-5.1-mrg
Diffstat (limited to 'sql/item.h')
-rw-r--r--sql/item.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/sql/item.h b/sql/item.h
index 2c26e1c4a07..126e106330d 100644
--- a/sql/item.h
+++ b/sql/item.h
@@ -646,9 +646,14 @@ public:
my_decimal *val_decimal_from_real(my_decimal *decimal_value);
my_decimal *val_decimal_from_int(my_decimal *decimal_value);
my_decimal *val_decimal_from_string(my_decimal *decimal_value);
+ my_decimal *val_decimal_from_date(my_decimal *decimal_value);
+ my_decimal *val_decimal_from_time(my_decimal *decimal_value);
longlong val_int_from_decimal();
double val_real_from_decimal();
+ int save_time_in_field(Field *field);
+ int save_date_in_field(Field *field);
+
virtual Field *get_tmp_table_field() { return 0; }
/* This is also used to create fields in CREATE ... SELECT: */
virtual Field *tmp_table_field(TABLE *t_arg) { return 0; }
@@ -2049,6 +2054,16 @@ public:
class Item_in_subselect;
+
+/*
+ An object of this class:
+ - Converts val_XXX() calls to ref->val_XXX_result() calls, like Item_ref.
+ - Sets owner->was_null=TRUE if it has returned a NULL value from any
+ val_XXX() function. This allows to inject an Item_ref_null_helper
+ object into subquery and then check if the subquery has produced a row
+ with NULL value.
+*/
+
class Item_ref_null_helper: public Item_ref
{
protected: