~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/r/select_found.result

  • Committer: Monty Taylor
  • Date: 2008-10-10 23:04:21 UTC
  • mto: (509.1.1 codestyle)
  • mto: This revision was merged to the branch mainline in revision 511.
  • Revision ID: monty@inaugust.com-20081010230421-zohe1eppxievpw8d
RemovedĀ O_NOFOLLOW

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
drop table if exists t1,t2;
2
 
create table t1 (a int not null auto_increment, b int not null, primary key(a));
3
 
insert into t1 (b) values (2),(3),(5),(5),(5),(6),(7),(9);
4
 
select SQL_CALC_FOUND_ROWS * from t1;
5
 
a       b
6
 
1       2
7
 
2       3
8
 
3       5
9
 
4       5
10
 
5       5
11
 
6       6
12
 
7       7
13
 
8       9
14
 
select found_rows();
15
 
found_rows()
16
 
8
17
 
select SQL_CALC_FOUND_ROWS * from t1 limit 1;
18
 
a       b
19
 
1       2
20
 
select found_rows();
21
 
found_rows()
22
 
8
23
 
select SQL_BUFFER_RESULT SQL_CALC_FOUND_ROWS * from t1 limit 1;
24
 
a       b
25
 
1       2
26
 
select found_rows();
27
 
found_rows()
28
 
8
29
 
select SQL_CALC_FOUND_ROWS * from t1 order by b desc limit 1;
30
 
a       b
31
 
8       9
32
 
select found_rows();
33
 
found_rows()
34
 
8
35
 
select SQL_CALC_FOUND_ROWS distinct b from t1 limit 1;
36
 
b
37
 
2
38
 
select found_rows();
39
 
found_rows()
40
 
6
41
 
select SQL_CALC_FOUND_ROWS b,count(*) as c from t1 group by b order by c desc limit 1;
42
 
b       c
43
 
5       3
44
 
select found_rows();
45
 
found_rows()
46
 
6
47
 
select SQL_CALC_FOUND_ROWS * from t1 left join t1 as t2 on (t1.b=t2.a) limit 2,1;
48
 
a       b       a       b
49
 
3       5       5       5
50
 
select found_rows();
51
 
found_rows()
52
 
8
53
 
drop table t1;
54
 
create table t1 (a int not null primary key);
55
 
insert into t1 values (1),(2),(3),(4),(5);
56
 
select sql_calc_found_rows a from t1 where a in (1,2,3) order by a desc limit 0,2;
57
 
a
58
 
3
59
 
2
60
 
select FOUND_ROWS();
61
 
FOUND_ROWS()
62
 
3
63
 
select sql_calc_found_rows a from t1 where a in (1,2,3) order by a+2 desc limit 0,2;
64
 
a
65
 
3
66
 
2
67
 
select FOUND_ROWS();
68
 
FOUND_ROWS()
69
 
3
70
 
drop table t1;
71
 
CREATE TABLE t1 (
72
 
`id` int NOT NULL auto_increment,
73
 
`kid` int NOT NULL default '0',
74
 
PRIMARY KEY (`id`),
75
 
KEY `kid` (`kid`)
76
 
);
77
 
CREATE TABLE t2 (
78
 
id int NOT NULL auto_increment,
79
 
name varchar(50) NOT NULL default '',
80
 
email varchar(50) NOT NULL default '',
81
 
PRIMARY KEY  (id),
82
 
UNIQUE KEY e_n (email,name)
83
 
);
84
 
EXPLAIN SELECT SQL_CALC_FOUND_ROWS DISTINCT email FROM t2 LEFT JOIN t1  ON kid = t2.id WHERE t1.id IS NULL ORDER BY t2.email LIMIT 10;
85
 
id      select_type     table   type    possible_keys   key     key_len ref     rows    Extra
86
 
1       SIMPLE  t2      index   NULL    PRIMARY 4       NULL    200     Using temporary; Using filesort
87
 
1       SIMPLE  t1      ref     kid     kid     4       test.t2.id      1       Using where; Using index; Not exists; Distinct
88
 
SELECT SQL_CALC_FOUND_ROWS DISTINCT email FROM t2 LEFT JOIN t1  ON kid = t2.id WHERE t1.id IS NULL ORDER BY t2.email  LIMIT 10;
89
 
email
90
 
email1
91
 
email10
92
 
email100
93
 
email101
94
 
email102
95
 
email103
96
 
email104
97
 
email105
98
 
email106
99
 
email107
100
 
SELECT FOUND_ROWS();
101
 
FOUND_ROWS()
102
 
200
103
 
SELECT SQL_CALC_FOUND_ROWS DISTINCT email FROM t2 LEFT JOIN t1  ON kid = t2.id WHERE t1.id IS NULL order by email LIMIT 10;
104
 
email
105
 
email1
106
 
email10
107
 
email100
108
 
email101
109
 
email102
110
 
email103
111
 
email104
112
 
email105
113
 
email106
114
 
email107
115
 
SELECT FOUND_ROWS();
116
 
FOUND_ROWS()
117
 
200
118
 
SELECT DISTINCT email FROM t2 LEFT JOIN t1  ON kid = t2.id WHERE t1.id IS NULL LIMIT 10;
119
 
email
120
 
email1
121
 
email2
122
 
email3
123
 
email4
124
 
email5
125
 
email6
126
 
email7
127
 
email8
128
 
email9
129
 
email10
130
 
SELECT DISTINCT email FROM t2 LEFT JOIN t1  ON kid = t2.id WHERE t1.id IS NULL ORDER BY email LIMIT 10;
131
 
email
132
 
email1
133
 
email10
134
 
email100
135
 
email101
136
 
email102
137
 
email103
138
 
email104
139
 
email105
140
 
email106
141
 
email107
142
 
INSERT INTO `t1` (`id`, `kid`) VALUES ('0', '150');
143
 
SELECT SQL_CALC_FOUND_ROWS DISTINCT email FROM t2 LEFT JOIN t1  ON kid = t2.id WHERE t1.id IS NULL LIMIT 10;
144
 
email
145
 
email1
146
 
email2
147
 
email3
148
 
email4
149
 
email5
150
 
email6
151
 
email7
152
 
email8
153
 
email9
154
 
email10
155
 
SELECT FOUND_ROWS();
156
 
FOUND_ROWS()
157
 
199
158
 
drop table t1,t2;
159
 
CREATE TEMPORARY TABLE `t1` (
160
 
`titre` char(80) NOT NULL default '',
161
 
`numeropost` int NOT NULL auto_increment,
162
 
`maxnumrep` int NOT NULL default '0',
163
 
PRIMARY KEY  (`numeropost`),
164
 
KEY `maxnumrep` (`maxnumrep`)
165
 
) ENGINE=MyISAM ROW_FORMAT=FIXED;
166
 
INSERT INTO t1 (titre,maxnumrep) VALUES
167
 
('test1','1'),('test2','2'),('test3','3');
168
 
SELECT SQL_CALC_FOUND_ROWS titre,numeropost,maxnumrep FROM t1 WHERE numeropost IN (1,2) ORDER BY maxnumrep DESC LIMIT 0, 1;
169
 
titre   numeropost      maxnumrep
170
 
test2   2       2
171
 
SELECT FOUND_ROWS();
172
 
FOUND_ROWS()
173
 
2
174
 
SELECT SQL_CALC_FOUND_ROWS 1 FROM (SELECT 1) as a LIMIT 0;
175
 
1
176
 
SELECT FOUND_ROWS();
177
 
FOUND_ROWS()
178
 
1
179
 
SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE numeropost > 1  LIMIT 0;
180
 
titre   numeropost      maxnumrep
181
 
SELECT FOUND_ROWS();
182
 
FOUND_ROWS()
183
 
2
184
 
SELECT SQL_CALC_FOUND_ROWS * FROM t1 LIMIT 0;
185
 
titre   numeropost      maxnumrep
186
 
SELECT FOUND_ROWS();
187
 
FOUND_ROWS()
188
 
3
189
 
SELECT SQL_CALC_FOUND_ROWS * FROM t1 ORDER BY numeropost  LIMIT 0;
190
 
titre   numeropost      maxnumrep
191
 
SELECT FOUND_ROWS();
192
 
FOUND_ROWS()
193
 
3
194
 
drop table t1;
195
 
create table t1 (id int, primary key (id));
196
 
insert into t1 values (1), (2), (3), (4), (5);
197
 
select SQL_CALC_FOUND_ROWS * from t1 where id > 3 limit 0, 1;
198
 
id
199
 
4
200
 
select FOUND_ROWS();
201
 
FOUND_ROWS()
202
 
2
203
 
select SQL_CALC_FOUND_ROWS * from t1 where id > 3 AND 1=2 limit 0, 1;
204
 
id
205
 
select FOUND_ROWS();
206
 
FOUND_ROWS()
207
 
0
208
 
select SQL_CALC_FOUND_ROWS * from t1 where id > 6 limit 0, 1;
209
 
id
210
 
select FOUND_ROWS();
211
 
FOUND_ROWS()
212
 
0
213
 
drop table t1;
214
 
CREATE TABLE t1 ( a int not null, b int not null, KEY ab(a,b) );
215
 
INSERT INTO t1 VALUES ( 47,    1  );
216
 
INSERT INTO t1 VALUES ( 70,    1  );
217
 
SELECT * FROM t1
218
 
WHERE
219
 
(
220
 
( b =1 AND a BETWEEN 14 AND 21 ) OR
221
 
( b =2 AND a BETWEEN 16 AND 18 ) OR
222
 
( b =3 AND a BETWEEN 15 AND 19 )
223
 
);
224
 
a       b
225
 
DROP TABLE t1;
226
 
CREATE TABLE t1 ( a integer, u varchar(15), r integer, key uao_idx( r, a, u));
227
 
DELETE  FROM t1
228
 
WHERE (  r = 1 AND a IN ( 1, 2    ) AND ( u = 'w'   OR u LIKE 'w/%'   ) )
229
 
OR (  r = 1 AND a IN (       3 ) AND ( u = 'w/U' OR u LIKE 'w/U/%' ) )
230
 
OR (  r = 1 AND a IN ( 1, 2, 3 ) AND ( u = 'w'                     ) );
231
 
drop table t1;
232
 
CREATE TABLE t1 (a VARCHAR(16), UNIQUE(a));
233
 
INSERT INTO t1 VALUES ('1'), ('2'), ('3');
234
 
SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE a = '2' LIMIT 0, 1;
235
 
a
236
 
2
237
 
SELECT FOUND_ROWS();
238
 
FOUND_ROWS()
239
 
1
240
 
DROP TABLE t1;
241
 
CREATE TABLE t1 (a INT);
242
 
INSERT INTO t1 VALUES (0), (0), (1), (2);
243
 
SELECT SQL_CALC_FOUND_ROWS * FROM t1 WHERE a = 0 GROUP BY a HAVING a > 10;
244
 
a
245
 
SELECT FOUND_ROWS();
246
 
FOUND_ROWS()
247
 
0
248
 
DROP TABLE t1;
249
 
SELECT 'foo';
250
 
foo
251
 
foo
252
 
SELECT FOUND_ROWS();
253
 
FOUND_ROWS()
254
 
1
255
 
SELECT SQL_CALC_FOUND_ROWS 'foo';
256
 
foo
257
 
foo
258
 
SELECT FOUND_ROWS();
259
 
FOUND_ROWS()
260
 
1
261
 
SELECT SQL_CALC_FOUND_ROWS 'foo' limit 0;
262
 
foo
263
 
SELECT FOUND_ROWS();
264
 
FOUND_ROWS()
265
 
1
266
 
SELECT FOUND_ROWS();
267
 
FOUND_ROWS()
268
 
1
269
 
SELECT SQL_CALC_FOUND_ROWS 'foo' UNION SELECT 'bar' LIMIT 0;
270
 
foo
271
 
SELECT FOUND_ROWS();
272
 
FOUND_ROWS()
273
 
2
274
 
CREATE TABLE t1 (a int, b int);
275
 
INSERT INTO t1 VALUES (1,2), (1,3), (1,4), (1,5);
276
 
SELECT SQL_CALC_FOUND_ROWS DISTINCT 'a' FROM t1 GROUP BY b LIMIT 2;
277
 
a
278
 
a
279
 
SELECT FOUND_ROWS();
280
 
FOUND_ROWS()
281
 
1
282
 
DROP TABLE t1;