Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
2467674b
Commit
2467674b
authored
Nov 06, 2005
by
ramil@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix for bug #13044: BIT_COUNT with NULL values.
parent
8243eee9
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
24 additions
and
4 deletions
+24
-4
mysql-test/r/func_op.result
mysql-test/r/func_op.result
+11
-0
mysql-test/t/func_op.test
mysql-test/t/func_op.test
+12
-0
sql/item_func.cc
sql/item_func.cc
+1
-4
No files found.
mysql-test/r/func_op.result
View file @
2467674b
...
@@ -25,3 +25,14 @@ select -1 >> 0, -1 << 0;
...
@@ -25,3 +25,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;
mysql-test/t/func_op.test
View file @
2467674b
...
@@ -14,3 +14,15 @@ select 1 | -1, 1 ^ -1, 1 & -1;
...
@@ -14,3 +14,15 @@ select 1 | -1, 1 ^ -1, 1 & -1;
select
0
|
-
1
,
0
^
-
1
,
0
&
-
1
;
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
;
sql/item_func.cc
View file @
2467674b
...
@@ -1138,11 +1138,8 @@ longlong Item_func_find_in_set::val_int()
...
@@ -1138,11 +1138,8 @@ longlong Item_func_find_in_set::val_int()
longlong
Item_func_bit_count
::
val_int
()
longlong
Item_func_bit_count
::
val_int
()
{
{
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
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment