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
5d865045
Commit
5d865045
authored
Mar 11, 2005
by
sergefp@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix for BUG#8711: "<=>" may have true value for NULL arguments, so make
Item_func_equal::not_null_tables() always return 0.
parent
4559fb99
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
34 additions
and
0 deletions
+34
-0
mysql-test/r/join_outer.result
mysql-test/r/join_outer.result
+20
-0
mysql-test/t/join_outer.test
mysql-test/t/join_outer.test
+13
-0
sql/item_cmpfunc.h
sql/item_cmpfunc.h
+1
-0
No files found.
mysql-test/r/join_outer.result
View file @
5d865045
...
...
@@ -684,3 +684,23 @@ t1 ALL NULL NULL NULL NULL 3
t2 ALL NULL NULL NULL NULL 2
t3 ALL NULL NULL NULL NULL 2
drop table t1, t2, t3;
create table t1 (
a int(11),
b char(10),
key (a)
);
insert into t1 (a) values (1),(2),(3),(4);
create table t2 (a int);
select * from t1 left join t2 on t1.a=t2.a where not (t2.a <=> t1.a);
a b a
1 NULL NULL
2 NULL NULL
3 NULL NULL
4 NULL NULL
select * from t1 left join t2 on t1.a=t2.a having not (t2.a <=> t1.a);
a b a
1 NULL NULL
2 NULL NULL
3 NULL NULL
4 NULL NULL
drop table t1,t2;
mysql-test/t/join_outer.test
View file @
5d865045
...
...
@@ -450,3 +450,16 @@ select * from t1 left join t2 on b1 = a1 left join t3 on c1 = a1 and b1 is
explain
select
*
from
t1
left
join
t2
on
b1
=
a1
left
join
t3
on
c1
=
a1
and
b1
is
null
;
drop
table
t1
,
t2
,
t3
;
# Test for BUG#8711 '<=>' was considered to be a NULL-rejecting predicate.
create
table
t1
(
a
int
(
11
),
b
char
(
10
),
key
(
a
)
);
insert
into
t1
(
a
)
values
(
1
),(
2
),(
3
),(
4
);
create
table
t2
(
a
int
);
select
*
from
t1
left
join
t2
on
t1
.
a
=
t2
.
a
where
not
(
t2
.
a
<=>
t1
.
a
);
select
*
from
t1
left
join
t2
on
t1
.
a
=
t2
.
a
having
not
(
t2
.
a
<=>
t1
.
a
);
drop
table
t1
,
t2
;
sql/item_cmpfunc.h
View file @
5d865045
...
...
@@ -78,6 +78,7 @@ class Item_func_equal :public Item_bool_func2
Item_func_equal
(
Item
*
a
,
Item
*
b
)
:
Item_bool_func2
(
a
,
b
)
{
};
longlong
val_int
();
void
fix_length_and_dec
();
table_map
not_null_tables
()
const
{
return
0
;
}
enum
Functype
functype
()
const
{
return
EQUAL_FUNC
;
}
enum
Functype
rev_functype
()
const
{
return
EQUAL_FUNC
;
}
cond_result
eq_cmp_result
()
const
{
return
COND_TRUE
;
}
...
...
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