mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge mysql.com:/usr/home/ram/work/mysql-4.0
into mysql.com:/usr/home/ram/work/mysql-4.1 mysql-test/r/func_op.result: Auto merged sql/item_func.cc: Auto merged mysql-test/t/func_op.test: SCCS merged
This commit is contained in:
@ -35,3 +35,14 @@ select -1 >> 0, -1 << 0;
|
|||||||
select -1 >> 1, -1 << 1;
|
select -1 >> 1, -1 << 1;
|
||||||
-1 >> 1 -1 << 1
|
-1 >> 1 -1 << 1
|
||||||
9223372036854775807 18446744073709551614
|
9223372036854775807 18446744073709551614
|
||||||
|
drop table if exists t1,t2;
|
||||||
|
create table t1(a int);
|
||||||
|
create table t2(a int, b int);
|
||||||
|
insert into t1 values (1), (2), (3);
|
||||||
|
insert into t2 values (1, 7), (3, 7);
|
||||||
|
select t1.a, t2.a, t2.b, bit_count(t2.b) from t1 left join t2 on t1.a=t2.a;
|
||||||
|
a a b bit_count(t2.b)
|
||||||
|
1 1 7 3
|
||||||
|
2 NULL NULL NULL
|
||||||
|
3 3 7 3
|
||||||
|
drop table t1, t2;
|
||||||
|
@ -17,4 +17,16 @@ select 0 | -1, 0 ^ -1, 0 & -1;
|
|||||||
select -1 >> 0, -1 << 0;
|
select -1 >> 0, -1 << 0;
|
||||||
select -1 >> 1, -1 << 1;
|
select -1 >> 1, -1 << 1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug 13044: wrong bit_count() results
|
||||||
|
#
|
||||||
|
|
||||||
|
drop table if exists t1,t2;
|
||||||
|
create table t1(a int);
|
||||||
|
create table t2(a int, b int);
|
||||||
|
insert into t1 values (1), (2), (3);
|
||||||
|
insert into t2 values (1, 7), (3, 7);
|
||||||
|
select t1.a, t2.a, t2.b, bit_count(t2.b) from t1 left join t2 on t1.a=t2.a;
|
||||||
|
drop table t1, t2;
|
||||||
|
|
||||||
# End of 4.1 tests
|
# End of 4.1 tests
|
||||||
|
@ -1540,11 +1540,8 @@ longlong Item_func_bit_count::val_int()
|
|||||||
{
|
{
|
||||||
DBUG_ASSERT(fixed == 1);
|
DBUG_ASSERT(fixed == 1);
|
||||||
ulonglong value= (ulonglong) args[0]->val_int();
|
ulonglong value= (ulonglong) args[0]->val_int();
|
||||||
if (args[0]->null_value)
|
if ((null_value= args[0]->null_value))
|
||||||
{
|
|
||||||
null_value=1; /* purecov: inspected */
|
|
||||||
return 0; /* purecov: inspected */
|
return 0; /* purecov: inspected */
|
||||||
}
|
|
||||||
return (longlong) my_count_bits(value);
|
return (longlong) my_count_bits(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user