mirror of
https://github.com/MariaDB/server.git
synced 2026-01-06 05:22:24 +03:00
Merge gleb.loc:/home/uchum/work/bk/5.0-opt
into gleb.loc:/home/uchum/work/bk/5.1-opt mysql-test/r/cast.result: Auto merged mysql-test/t/cast.test: Auto merged sql/item_timefunc.cc: Auto merged
This commit is contained in:
@@ -403,4 +403,15 @@ hex(cast('a' as binary(2)))
|
||||
select hex(cast('a' as char(2) binary));
|
||||
hex(cast('a' as char(2) binary))
|
||||
61
|
||||
CREATE TABLE t1 (d1 datetime);
|
||||
INSERT INTO t1(d1) VALUES ('2007-07-19 08:30:00'), (NULL),
|
||||
('2007-07-19 08:34:00'), (NULL), ('2007-07-19 08:36:00');
|
||||
SELECT cast(date(d1) as signed) FROM t1;
|
||||
cast(date(d1) as signed)
|
||||
20070719
|
||||
NULL
|
||||
20070719
|
||||
NULL
|
||||
20070719
|
||||
drop table t1;
|
||||
End of 5.0 tests
|
||||
|
||||
@@ -237,4 +237,13 @@ select hex(cast('a' as char(2) binary));
|
||||
select hex(cast('a' as binary(2)));
|
||||
select hex(cast('a' as char(2) binary));
|
||||
|
||||
#
|
||||
# Bug#29898: Item_date_typecast::val_int doesn't reset the null_value flag.
|
||||
#
|
||||
CREATE TABLE t1 (d1 datetime);
|
||||
INSERT INTO t1(d1) VALUES ('2007-07-19 08:30:00'), (NULL),
|
||||
('2007-07-19 08:34:00'), (NULL), ('2007-07-19 08:36:00');
|
||||
SELECT cast(date(d1) as signed) FROM t1;
|
||||
drop table t1;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
||||
@@ -2534,11 +2534,8 @@ longlong Item_date_typecast::val_int()
|
||||
{
|
||||
DBUG_ASSERT(fixed == 1);
|
||||
MYSQL_TIME ltime;
|
||||
if (args[0]->get_date(<ime, TIME_FUZZY_DATE))
|
||||
{
|
||||
null_value= 1;
|
||||
if ((null_value= args[0]->get_date(<ime, TIME_FUZZY_DATE)))
|
||||
return 0;
|
||||
}
|
||||
return (longlong) (ltime.year * 10000L + ltime.month * 100 + ltime.day);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user