1269
select * from t1 CROSS JOIN t1 t12;
1269
select * from t1,t1 t12;
1270
1270
Period Varor_period Period Varor_period
1271
1271
9410 9412 9410 9412
1272
1272
select t2.fld1,t22.fld1 from t2,t2 t22 where t2.fld1 >= 250501 and t2.fld1 <= 250505 and t22.fld1 >= 250501 and t22.fld1 <= 250505;
1299
1299
insert into t2 (fld1, companynr) values (999999,99);
1300
1300
select t2.companynr,companyname from t2 left join t4 using (companynr) where t4.companynr is null;
1933
1932
show tables from test like "s%";
1934
1933
Tables_in_test (s%)
1935
1934
show tables from test like "t?";
1936
1935
Tables_in_test (t?)
1937
show columns from t2;
1938
Field Type Null Default Default_is_NULL On_Update
1940
fld1 INTEGER NO 0 NO
1941
companynr INTEGER NO 0 NO
1946
show columns from t2 from test like 'f%';
1947
Field Type Null Default Default_is_NULL On_Update
1949
fld1 INTEGER NO 0 NO
1950
companynr INTEGER NO 0 NO
1955
show columns from t2 from test like 's%';
1956
Field Type Null Default Default_is_NULL On_Update
1958
fld1 INTEGER NO 0 NO
1959
companynr INTEGER NO 0 NO
1936
show full columns from t2;
1937
Field Type Collation Null Key Default Extra Privileges Comment
1938
auto int NULL NO PRI NULL auto_increment #
1939
fld1 int NULL NO UNI 0 #
1940
companynr int NULL NO 0 #
1941
fld3 varchar(30) utf8_general_ci NO MUL #
1942
fld4 varchar(35) utf8_general_ci NO #
1943
fld5 varchar(35) utf8_general_ci NO #
1944
fld6 varchar(4) utf8_general_ci NO #
1945
show full columns from t2 from test like 'f%';
1946
Field Type Collation Null Key Default Extra Privileges Comment
1947
fld1 int NULL NO UNI 0 #
1948
fld3 varchar(30) utf8_general_ci NO MUL #
1949
fld4 varchar(35) utf8_general_ci NO #
1950
fld5 varchar(35) utf8_general_ci NO #
1951
fld6 varchar(4) utf8_general_ci NO #
1952
show full columns from t2 from test like 's%';
1953
Field Type Collation Null Key Default Extra Privileges Comment
1964
1954
drop table t4, t3, t2, t1;
1965
1955
CREATE TABLE t1 (
1966
1956
id bigint NOT NULL auto_increment,
2458
2448
create table t11 like t1;
2459
2449
insert into t1 values(1,""),(2,"");
2460
2450
show table status like 't1%';
2461
Session Schema Name Type Engine Version Rows Avg_row_length Table_size Auto_increment
2462
# test t1 STANDARD InnoDB # # # # #
2451
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
2452
t1 InnoDB X Compact 2 8192 X X X X X X X X utf8_general_ci NULL
2453
t11 InnoDB X Compact 0 0 X X X X X X X X utf8_general_ci NULL
2463
2454
select 123 as a from t1 where f1 is null;
2465
2456
drop table t1,t11;
2818
2809
insert into t1 values(1,'2005-01-01'),(2,'2005-09-01'),(3,'2005-09-30'),
2819
2810
(4,'2005-10-01'),(5,'2005-12-30');
2820
2811
select * from t1 where f2 >= 0 order by f2;
2821
ERROR HY000: Received an invalid DATE value '0'.
2812
ERROR HY000: Received an invalid datetime value '0'.
2822
2813
select * from t1 where f2 >= '0000-00-00' order by f2;
2823
2814
ERROR HY000: Received an invalid datetime value '0000-00-00'.
2824
2815
select * from t1 where f2 >= '2005-09-31' order by f2;
2932
2923
create table t1 (a int);
2933
2924
insert into t1 values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
2934
2925
create table t2 (a int, b int, c int, e int, primary key(a,b,c));
2935
insert into t2 select A.a, B.a, C.a, C.a from t1 A CROSS JOIN t1 B CROSS JOIN t1 C;
2926
insert into t2 select A.a, B.a, C.a, C.a from t1 A, t1 B, t1 C;
2936
2927
analyze table t2;
2937
2928
Table Op Msg_type Msg_text
2938
2929
test.t2 analyze status OK
2952
2943
SELECT a, c, d, f FROM t1,t2 WHERE a=c AND b BETWEEN 4 AND 6;
2953
2944
id select_type table type possible_keys key key_len ref rows Extra
2954
2945
1 SIMPLE t1 range PRIMARY,b b 5 NULL 3 Using where; Using index
2955
1 SIMPLE t2 ref c c 5 test.t1.a 1 Using where
2946
1 SIMPLE t2 ref c c 5 test.t1.a 1
2957
2948
SELECT a, c, d, f FROM t1,t2 WHERE a=c AND b BETWEEN 4 AND 6 AND a > 0;
2958
2949
id select_type table type possible_keys key key_len ref rows Extra
2959
2950
1 SIMPLE t1 range PRIMARY,b b 5 NULL 3 Using where; Using index
2960
1 SIMPLE t2 ref c c 5 test.t1.a 1 Using where
2951
1 SIMPLE t2 ref c c 5 test.t1.a 1
2961
2952
DROP TABLE t1, t2;
2962
2953
create table t1 (
2963
2954
a int not null auto_increment primary key,
2993
2984
EXPLAIN SELECT b FROM t1, t2 WHERE b=c AND a=1;
2994
2985
id select_type table type possible_keys key key_len ref rows Extra
2995
2986
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
2996
1 SIMPLE t2 ref idx idx 4 const 8 Using index
2987
1 SIMPLE t2 ref idx idx 4 const 7 Using index
2997
2988
EXPLAIN SELECT b FROM t1, t2 WHERE b=c AND a=4;
2998
2989
id select_type table type possible_keys key key_len ref rows Extra
2999
2990
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
3011
3002
id select_type table type possible_keys key key_len ref rows Extra
3012
3003
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
3013
3004
1 SIMPLE t2 const idx1 NULL NULL NULL 1
3014
1 SIMPLE t3 ALL idx1 NULL NULL NULL 5 Using where
3005
1 SIMPLE t3 ref idx1 idx1 5 const 2
3015
3006
SELECT * FROM t1 LEFT JOIN t2 ON t2.b=t1.a INNER JOIN t3 ON t3.d=t1.id
3225
3216
AND t1.ts BETWEEN "2006-01-01" AND "2006-12-31";
3226
3217
id select_type table type possible_keys key key_len ref rows Extra
3227
3218
1 SIMPLE t2 const PRIMARY PRIMARY 4 const 1
3228
1 SIMPLE t1 range ts ts 9 NULL 2 Using where
3219
1 SIMPLE t1 range ts ts 5 NULL 1 Using where
3229
3220
SELECT * FROM t1 LEFT JOIN t2 ON (t1.a=t2.a) WHERE t1.a=30
3230
3221
AND t1.ts BETWEEN t2.dt1 AND t2.dt2
3231
3222
AND t1.ts BETWEEN "2006-01-01" AND "2006-12-31";
3250
3241
show create table t1;
3251
3242
Table Create Table
3252
3243
t1 CREATE TABLE `t1` (
3253
`i` DECIMAL(19,0) NOT NULL,
3254
`c` DECIMAL(19,0) NOT NULL,
3255
`co` DECIMAL(19,0) NOT NULL
3256
) ENGINE=InnoDB COLLATE = utf8_general_ci
3244
`i` decimal(19,0) NOT NULL,
3245
`c` decimal(19,0) NOT NULL,
3246
`co` decimal(19,0) NOT NULL
3259
3250
if(1, 1111111111111111111, 1) i,
3555
3546
c34 INT DEFAULT 0,
3556
3547
KEY (c33, c34, c32));
3557
3548
INSERT INTO t1 values (),(),(),(),();
3558
INSERT INTO t2 SELECT a.c11, b.c11 FROM t1 a CROSS JOIN t1 b;
3549
INSERT INTO t2 SELECT a.c11, b.c11 FROM t1 a, t1 b;
3559
3550
INSERT INTO t3 VALUES (1, 1, 1, 0),
3673
CREATE TABLE t1 (a INT);
3674
INSERT INTO t1 VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10);
3675
CREATE TABLE t2 (b INT);
3676
INSERT INTO t2 VALUES (2);
3677
SELECT * FROM t1 WHERE a = 1 + 1;
3680
EXPLAIN EXTENDED SELECT * FROM t1 WHERE a = 1 + 1;
3681
id select_type table type possible_keys key key_len ref rows filtered Extra
3682
1 SIMPLE t1 ALL NULL NULL NULL NULL 10 100.00 Using where
3684
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` = <cache>((1 + 1)))
3685
SELECT * FROM t1 HAVING a = 1 + 1;
3688
EXPLAIN EXTENDED SELECT * FROM t1 HAVING a = 1 + 1;
3689
id select_type table type possible_keys key key_len ref rows filtered Extra
3690
1 SIMPLE t1 ALL NULL NULL NULL NULL 10 100.00
3692
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` having (`test`.`t1`.`a` = <cache>((1 + 1)))
3693
SELECT * FROM t1, t2 WHERE a = b + (1 + 1);
3696
EXPLAIN EXTENDED SELECT * FROM t1, t2 WHERE a = b + (1 + 1);
3697
id select_type table type possible_keys key key_len ref rows filtered Extra
3698
1 SIMPLE t2 ALL NULL NULL NULL NULL 1 100.00
3699
1 SIMPLE t1 ALL NULL NULL NULL NULL 10 100.00 Using where; Using join buffer
3701
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t2`.`b` AS `b` from `test`.`t1` join `test`.`t2` where (`test`.`t1`.`a` = (`test`.`t2`.`b` + <cache>((1 + 1))))
3702
SELECT * FROM t2 LEFT JOIN t1 ON a = b + 1;
3705
EXPLAIN EXTENDED SELECT * FROM t2 LEFT JOIN t1 ON a = b + 1;
3706
id select_type table type possible_keys key key_len ref rows filtered Extra
3707
1 SIMPLE t2 ALL NULL NULL NULL NULL 1 100.00
3708
1 SIMPLE t1 ALL NULL NULL NULL NULL 10 100.00
3710
Note 1003 select `test`.`t2`.`b` AS `b`,`test`.`t1`.`a` AS `a` from `test`.`t2` left join `test`.`t1` on((`test`.`t1`.`a` = (`test`.`t2`.`b` + 1))) where 1
3711
EXPLAIN EXTENDED SELECT * FROM t1 WHERE a > UNIX_TIMESTAMP('2009-03-10 00:00:00');
3712
id select_type table type possible_keys key key_len ref rows filtered Extra
3713
1 SIMPLE t1 ALL NULL NULL NULL NULL 10 100.00 Using where
3715
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (`test`.`t1`.`a` > <cache>(unix_timestamp('2009-03-10 00:00:00')))