diff --git a/mysql-test/r/func_time.result b/mysql-test/r/func_time.result index 039640a5036..75c57c34171 100644 --- a/mysql-test/r/func_time.result +++ b/mysql-test/r/func_time.result @@ -1533,3 +1533,6 @@ select least(greatest(f3, f2, f4), f5) from t1; least(greatest(f3, f2, f4), f5) 0000-00-00 00:00:00 drop table t1; +select day(coalesce(null)); +day(coalesce(null)) +NULL diff --git a/mysql-test/t/func_time.test b/mysql-test/t/func_time.test index 7d143ed9c16..e4b52b0330c 100644 --- a/mysql-test/t/func_time.test +++ b/mysql-test/t/func_time.test @@ -968,3 +968,8 @@ insert ignore t1 values ('04:38:11','0000-00-00 00:00:00',0,'0000-00-00 00:00:00 select least(greatest(f3, f2, f4), f5) from t1; drop table t1; +# +# lp:737474 Wrong result with DAY(COALESCE(NULL)) in 5.1-micro +# +select day(coalesce(null)); + diff --git a/sql/item_cmpfunc.cc b/sql/item_cmpfunc.cc index 2cbcbbdb55f..925582be542 100644 --- a/sql/item_cmpfunc.cc +++ b/sql/item_cmpfunc.cc @@ -2917,7 +2917,7 @@ bool Item_func_coalesce::get_date(MYSQL_TIME *ltime,uint fuzzydate) return res; } null_value=1; - return 0; + return 1; }