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
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
51d54db7
Commit
51d54db7
authored
Dec 22, 2009
by
Satya B
Browse files
Options
Browse Files
Download
Plain Diff
merge to mysql-5.1-bugteam
parents
3cab1196
6fed2148
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
75 additions
and
1 deletion
+75
-1
mysql-test/r/count_distinct.result
mysql-test/r/count_distinct.result
+20
-0
mysql-test/r/user_var.result
mysql-test/r/user_var.result
+15
-0
mysql-test/t/count_distinct.test
mysql-test/t/count_distinct.test
+19
-0
mysql-test/t/user_var.test
mysql-test/t/user_var.test
+20
-0
sql/item_func.cc
sql/item_func.cc
+1
-1
No files found.
mysql-test/r/count_distinct.result
View file @
51d54db7
...
...
@@ -40,6 +40,26 @@ select t2.isbn,city,t1.libname,count(distinct t1.libname) as a from t3 left join
isbn city libname a
007 Berkeley Berkeley Public1 2
000 New York New York Public Libra 2
select t2.isbn,city,@bar:=t1.libname,count(distinct t1.libname) as a
from t3 left join t1 on t3.libname=t1.libname left join t2
on t3.isbn=t2.isbn group by city having count(distinct
t1.libname) > 1;
isbn city @bar:=t1.libname a
007 Berkeley Berkeley Public1 2
000 New York New York Public Libra 2
SELECT @bar;
@bar
Berkeley Public2
select t2.isbn,city,concat(@bar:=t1.libname),count(distinct t1.libname) as a
from t3 left join t1 on t3.libname=t1.libname left join t2
on t3.isbn=t2.isbn group by city having count(distinct
t1.libname) > 1;
isbn city concat(@bar:=t1.libname) a
007 Berkeley Berkeley Public1 2
000 New York New York Public Libra 2
SELECT @bar;
@bar
Berkeley Public2
drop table t1, t2, t3;
create table t1 (f1 int);
insert into t1 values (1);
...
...
mysql-test/r/user_var.result
View file @
51d54db7
...
...
@@ -409,6 +409,21 @@ SELECT a, b FROM t1 WHERE a=2 AND b=3 GROUP BY a, b;
a b
2 3
DROP TABLE t1;
CREATE TABLE t1 (f1 int(11) default NULL, f2 int(11) default NULL);
CREATE TABLE t2 (f1 int(11) default NULL, f2 int(11) default NULL, foo int(11));
CREATE TABLE t3 (f1 int(11) default NULL, f2 int(11) default NULL);
INSERT INTO t1 VALUES(10, 10);
INSERT INTO t1 VALUES(10, 10);
INSERT INTO t2 VALUES(10, 10, 10);
INSERT INTO t2 VALUES(10, 10, 10);
INSERT INTO t3 VALUES(10, 10);
INSERT INTO t3 VALUES(10, 10);
SELECT MIN(t2.f1),
@bar:= (SELECT MIN(t3.f2) FROM t3 WHERE t3.f2 > foo)
FROM t1,t2 WHERE t1.f1 = t2.f1 ORDER BY t2.f1;
MIN(t2.f1) @bar:= (SELECT MIN(t3.f2) FROM t3 WHERE t3.f2 > foo)
10 NULL
DROP TABLE t1, t2, t3;
End of 5.0 tests
CREATE TABLE t1 (i INT);
CREATE TRIGGER t_after_insert AFTER INSERT ON t1 FOR EACH ROW SET @bug42188 = 10;
...
...
mysql-test/t/count_distinct.test
View file @
51d54db7
...
...
@@ -35,6 +35,25 @@ insert into t1 values ('NYC Lib','New York');
select
t2
.
isbn
,
city
,
t1
.
libname
,
count
(
t1
.
libname
)
as
a
from
t3
left
join
t1
on
t3
.
libname
=
t1
.
libname
left
join
t2
on
t3
.
isbn
=
t2
.
isbn
group
by
city
,
t1
.
libname
;
select
t2
.
isbn
,
city
,
t1
.
libname
,
count
(
distinct
t1
.
libname
)
as
a
from
t3
left
join
t1
on
t3
.
libname
=
t1
.
libname
left
join
t2
on
t3
.
isbn
=
t2
.
isbn
group
by
city
having
count
(
distinct
t1
.
libname
)
>
1
;
select
t2
.
isbn
,
city
,
t1
.
libname
,
count
(
distinct
t1
.
libname
)
as
a
from
t3
left
join
t1
on
t3
.
libname
=
t1
.
libname
left
join
t2
on
t3
.
isbn
=
t2
.
isbn
group
by
city
having
count
(
distinct
concat
(
t1
.
libname
,
'a'
))
>
1
;
select
t2
.
isbn
,
city
,
@
bar
:=
t1
.
libname
,
count
(
distinct
t1
.
libname
)
as
a
from
t3
left
join
t1
on
t3
.
libname
=
t1
.
libname
left
join
t2
on
t3
.
isbn
=
t2
.
isbn
group
by
city
having
count
(
distinct
t1
.
libname
)
>
1
;
#
# Wrong result, see bug#49872
#
SELECT
@
bar
;
select
t2
.
isbn
,
city
,
concat
(
@
bar
:=
t1
.
libname
),
count
(
distinct
t1
.
libname
)
as
a
from
t3
left
join
t1
on
t3
.
libname
=
t1
.
libname
left
join
t2
on
t3
.
isbn
=
t2
.
isbn
group
by
city
having
count
(
distinct
t1
.
libname
)
>
1
;
#
# Wrong result, see bug#49872
#
SELECT
@
bar
;
drop
table
t1
,
t2
,
t3
;
#
...
...
mysql-test/t/user_var.test
View file @
51d54db7
...
...
@@ -295,6 +295,26 @@ SELECT @a, @b;
SELECT
a
,
b
FROM
t1
WHERE
a
=
2
AND
b
=
3
GROUP
BY
a
,
b
;
DROP
TABLE
t1
;
#
# Bug#47371: reference by same column name
#
CREATE
TABLE
t1
(
f1
int
(
11
)
default
NULL
,
f2
int
(
11
)
default
NULL
);
CREATE
TABLE
t2
(
f1
int
(
11
)
default
NULL
,
f2
int
(
11
)
default
NULL
,
foo
int
(
11
));
CREATE
TABLE
t3
(
f1
int
(
11
)
default
NULL
,
f2
int
(
11
)
default
NULL
);
INSERT
INTO
t1
VALUES
(
10
,
10
);
INSERT
INTO
t1
VALUES
(
10
,
10
);
INSERT
INTO
t2
VALUES
(
10
,
10
,
10
);
INSERT
INTO
t2
VALUES
(
10
,
10
,
10
);
INSERT
INTO
t3
VALUES
(
10
,
10
);
INSERT
INTO
t3
VALUES
(
10
,
10
);
SELECT
MIN
(
t2
.
f1
),
@
bar
:=
(
SELECT
MIN
(
t3
.
f2
)
FROM
t3
WHERE
t3
.
f2
>
foo
)
FROM
t1
,
t2
WHERE
t1
.
f1
=
t2
.
f1
ORDER
BY
t2
.
f1
;
DROP
TABLE
t1
,
t2
,
t3
;
--
echo
End
of
5.0
tests
#
...
...
sql/item_func.cc
View file @
51d54db7
...
...
@@ -606,7 +606,7 @@ void Item_func::signal_divide_by_null()
Item
*
Item_func
::
get_tmp_table_item
(
THD
*
thd
)
{
if
(
!
with_sum_func
&&
!
const_item
()
&&
functype
()
!=
SUSERVAR_FUNC
)
if
(
!
with_sum_func
&&
!
const_item
())
return
new
Item_field
(
result_field
);
return
copy_or_same
(
thd
);
}
...
...
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