Fix for BUG#7455.

The fix checks if the trim string argument is NULL. If so, the standard
mandates that the function result must be also NULL.


mysql-test/r/func_str.result:
  added test result
mysql-test/t/func_str.test:
  Added test for NULL arguments.
sql/item_strfunc.cc:
  Test if the trim argument is NULL.
This commit is contained in:
unknown 2004-12-28 11:57:56 +02:00
commit 8487aa5abc
3 changed files with 24 additions and 1 deletions

View file

@ -697,3 +697,9 @@ quote(ltrim(concat(' ', 'a')))
select quote(trim(concat(' ', 'a')));
quote(trim(concat(' ', 'a')))
'a'
select trim(null from 'kate') as "must_be_null";
must_be_null
NULL
select trim('xyz' from null) as "must_be_null";
must_be_null
NULL

View file

@ -435,3 +435,11 @@ drop table t1;
select quote(ltrim(concat(' ', 'a')));
select quote(trim(concat(' ', 'a')));
#
# Bug#7455 unexpected result: TRIM(<NULL> FROM <whatever>) gives NOT NULL
# According to ANSI if one of the TRIM arguments is NULL, then the result
# must be NULL too.
#
select trim(null from 'kate') as "must_be_null";
select trim('xyz' from null) as "must_be_null";