followup to fix for bug #1790 BIT_AND() result in GROUP BY different when

SQL_BIG_RESULT used": now BIT_AND() always returns 18446744073709551615
if no rows were found.
This patch also fixes bug #1972: "BIT_AND() and BIT_OR() still return 
a *signed* 64bit value"


mysql-test/r/func_group.result:
  followup to fix for bug #1790 BIT_AND() result in GROUP BY different when 
  SQL_BIG_RESULT used": test results fixed
  bug #1972 "BIT_AND() and BIT_OR() still return a *signed* 64bit value":
  results of new tests
mysql-test/t/func_group.test:
  added tests for bug #1972 "BIT_AND() and BIT_OR() still return a 
  *signed* 64bit value"
This commit is contained in:
unknown 2003-12-10 15:17:23 +03:00
commit 02f56e77e0
3 changed files with 30 additions and 10 deletions

View file

@ -104,12 +104,13 @@ Item_sum_num::val_str(String *str)
String *
Item_sum_int::val_str(String *str)
{
longlong nr=val_int();
longlong nr= val_int();
if (null_value)
return 0;
char buff[21];
uint length= (uint) (longlong10_to_str(nr,buff,-10)-buff);
str->copy(buff,length);
if (unsigned_flag)
str->set((ulonglong) nr);
else
str->set(nr);
return str;
}