~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to mysql-test/suite/rpl/r/rpl_multi_update3.result

  • Committer: brian
  • Date: 2008-06-25 05:29:13 UTC
  • Revision ID: brian@localhost.localdomain-20080625052913-6upwo0jsrl4lnapl
clean slate

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
stop slave;
 
2
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 
3
reset master;
 
4
reset slave;
 
5
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 
6
start slave;
 
7
 
 
8
-------- Test for BUG#9361 --------
 
9
CREATE TABLE t1 (
 
10
a int unsigned not null auto_increment primary key,
 
11
b int unsigned
 
12
) ENGINE=MyISAM;
 
13
CREATE TABLE t2 (
 
14
a int unsigned not null auto_increment primary key,
 
15
b int unsigned
 
16
) ENGINE=MyISAM;
 
17
INSERT INTO t1 VALUES (NULL, 0);
 
18
INSERT INTO t1 SELECT NULL, 0 FROM t1;
 
19
INSERT INTO t2 VALUES (NULL, 0), (NULL,1);
 
20
SELECT * FROM t1 ORDER BY a;
 
21
a       b
 
22
1       0
 
23
2       0
 
24
SELECT * FROM t2 ORDER BY a;
 
25
a       b
 
26
1       0
 
27
2       1
 
28
UPDATE t2, (SELECT a FROM t1 ORDER BY a) AS t SET t2.b = t.a+5 ;
 
29
SELECT * FROM t1 ORDER BY a;
 
30
a       b
 
31
1       0
 
32
2       0
 
33
SELECT * FROM t2 ORDER BY a;
 
34
a       b
 
35
1       6
 
36
2       6
 
37
SELECT * FROM t1 ORDER BY a;
 
38
a       b
 
39
1       0
 
40
2       0
 
41
SELECT * FROM t2 ORDER BY a;
 
42
a       b
 
43
1       6
 
44
2       6
 
45
drop table t1,t2;
 
46
 
 
47
-------- Test 1 for BUG#9361 --------
 
48
DROP TABLE IF EXISTS t1;
 
49
DROP TABLE IF EXISTS t2;
 
50
CREATE TABLE t1 (
 
51
a1  char(30),
 
52
a2  int,
 
53
a3  int,
 
54
a4  char(30),
 
55
a5  char(30)
 
56
);
 
57
CREATE TABLE t2 (
 
58
b1  int,
 
59
b2  char(30)
 
60
);
 
61
INSERT INTO t1 VALUES ('Yes', 1, NULL, 'foo', 'bar');
 
62
INSERT INTO t2 VALUES (1, 'baz');
 
63
UPDATE t1 a, t2 
 
64
SET    a.a1 = 'No' 
 
65
WHERE  a.a2 = 
 
66
(SELECT  b1 
 
67
FROM    t2 
 
68
WHERE   b2 = 'baz') 
 
69
AND a.a3 IS NULL 
 
70
AND a.a4 = 'foo' 
 
71
AND a.a5 = 'bar';
 
72
SELECT * FROM t1;
 
73
a1      a2      a3      a4      a5
 
74
No      1       NULL    foo     bar
 
75
SELECT * FROM t2;
 
76
b1      b2
 
77
1       baz
 
78
DROP TABLE t1, t2;
 
79
 
 
80
-------- Test 2 for BUG#9361 --------
 
81
DROP TABLE IF EXISTS t1;
 
82
DROP TABLE IF EXISTS t2;
 
83
DROP TABLE IF EXISTS t3;
 
84
CREATE TABLE t1 (
 
85
i   INT,
 
86
j   INT,
 
87
x   INT,
 
88
y   INT,
 
89
z   INT
 
90
);
 
91
CREATE TABLE t2 (
 
92
i   INT,
 
93
k   INT,
 
94
x   INT,
 
95
y   INT,
 
96
z   INT
 
97
);
 
98
CREATE TABLE t3 (
 
99
j   INT,
 
100
k   INT,
 
101
x   INT,
 
102
y   INT,
 
103
z   INT
 
104
);
 
105
INSERT INTO t1 VALUES ( 1, 2,13,14,15);
 
106
INSERT INTO t2 VALUES ( 1, 3,23,24,25);
 
107
INSERT INTO t3 VALUES ( 2, 3, 1,34,35), ( 2, 3, 1,34,36);
 
108
UPDATE      t1 AS a  
 
109
INNER JOIN  t2 AS b 
 
110
ON a.i = b.i
 
111
INNER JOIN  t3 AS c 
 
112
ON a.j = c.j  AND  b.k = c.k
 
113
SET         a.x = b.x, 
 
114
a.y = b.y, 
 
115
a.z = (
 
116
SELECT  sum(z) 
 
117
FROM    t3
 
118
WHERE   y = 34 
 
119
 
120
WHERE       b.x = 23;
 
121
SELECT * FROM t1;
 
122
i       j       x       y       z
 
123
1       2       23      24      71
 
124
DROP TABLE t1, t2, t3;
 
125
DROP TABLE IF EXISTS t1;
 
126
Warnings:
 
127
Note    1051    Unknown table 't1'
 
128
DROP TABLE IF EXISTS t2;
 
129
Warnings:
 
130
Note    1051    Unknown table 't2'
 
131
CREATE TABLE t1 (
 
132
idp int(11) NOT NULL default '0',
 
133
idpro int(11) default NULL,
 
134
price decimal(19,4) default NULL,
 
135
PRIMARY KEY (idp)
 
136
);
 
137
CREATE TABLE t2 (
 
138
idpro int(11) NOT NULL default '0',
 
139
price decimal(19,4) default NULL,
 
140
nbprice int(11) default NULL,
 
141
PRIMARY KEY (idpro)
 
142
);
 
143
INSERT INTO t1 VALUES 
 
144
(1,1,'3.0000'),
 
145
(2,2,'1.0000'),
 
146
(3,1,'1.0000'),
 
147
(4,1,'4.0000'),
 
148
(5,3,'2.0000'),
 
149
(6,2,'4.0000');
 
150
INSERT INTO t2 VALUES 
 
151
(1,'0.0000',0),
 
152
(2,'0.0000',0),
 
153
(3,'0.0000',0);
 
154
update 
 
155
t2
 
156
join 
 
157
( select    idpro, min(price) as min_price, count(*) as nbr_price
 
158
from      t1 
 
159
where     idpro>0 and price>0 
 
160
group by  idpro
 
161
) as table_price
 
162
on   t2.idpro = table_price.idpro 
 
163
set  t2.price = table_price.min_price, 
 
164
t2.nbprice = table_price.nbr_price;
 
165
select "-- MASTER AFTER JOIN --" as "";
 
166
 
 
167
-- MASTER AFTER JOIN --
 
168
select * from t1;
 
169
idp     idpro   price
 
170
1       1       3.0000
 
171
2       2       1.0000
 
172
3       1       1.0000
 
173
4       1       4.0000
 
174
5       3       2.0000
 
175
6       2       4.0000
 
176
select * from t2;
 
177
idpro   price   nbprice
 
178
1       1.0000  3
 
179
2       1.0000  2
 
180
3       2.0000  1
 
181
select "-- SLAVE AFTER JOIN --" as "";
 
182
 
 
183
-- SLAVE AFTER JOIN --
 
184
select * from t1;
 
185
idp     idpro   price
 
186
1       1       3.0000
 
187
2       2       1.0000
 
188
3       1       1.0000
 
189
4       1       4.0000
 
190
5       3       2.0000
 
191
6       2       4.0000
 
192
select * from t2;
 
193
idpro   price   nbprice
 
194
1       1.0000  3
 
195
2       1.0000  2
 
196
3       2.0000  1
 
197
DROP TABLE t1, t2;