~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to tests/t/compare.test

  • Committer: Monty Taylor
  • Date: 2008-09-16 00:00:48 UTC
  • mto: This revision was merged to the branch mainline in revision 391.
  • Revision ID: monty@inaugust.com-20080916000048-3rvrv3gv9l0ad3gs
Fixed copyright headers in drizzled/

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#
2
 
# Bug when using comparions of strings and integers.
3
 
#
4
 
 
5
 
--disable_warnings
6
 
drop table if exists t1;
7
 
--enable_warnings
8
 
 
9
 
CREATE TABLE t1 (id CHAR(12) not null, PRIMARY KEY (id));
10
 
insert into t1 values ('000000000001'),('000000000002');
11
 
explain select * from t1 where id=000000000001;
12
 
select * from t1 where id=000000000001;
13
 
delete from t1 where id=000000000002;
14
 
select * from t1;
15
 
drop table t1;
16
 
 
17
 
#
18
 
# Check the following:
19
 
# "a"  == "a "
20
 
# "a\0" < "a"
21
 
# "a\0" < "a "
22
 
 
23
 
SELECT 'a' = 'a ';
24
 
SELECT 'a\0' < 'a';
25
 
SELECT 'a\0' < 'a ';
26
 
SELECT 'a\t' < 'a';
27
 
SELECT 'a\t' < 'a ';
28
 
 
29
 
CREATE TABLE t1 (a char(10) not null);
30
 
INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
31
 
SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
32
 
DROP TABLE t1;
33
 
 
34
 
# Bug #8134: Comparison against CHAR(31) at end of string
35
 
SELECT CHAR(31) = '', '' = CHAR(31);
36
 
# Extra test
37
 
SELECT CHAR(30) = '', '' = CHAR(30);
38
 
 
39
 
# End of 4.1 tests
40
 
 
41
 
#
42
 
#Bug #21159: Optimizer: wrong result after AND with different data types
43
 
#
44
 
create table t1 (a int,b varbinary(1));
45
 
insert into t1 values (0x01,0x01);
46
 
select * from t1 where a=b;
47
 
select * from t1 where a=b and b=0x01;
48
 
drop table if exists t1;
49
 
 
50
 
#
51
 
# Bug #31887: DML Select statement not returning same results when executed
52
 
# in version 5
53
 
#
54
 
 
55
 
CREATE TABLE  t1 (b int, c int);
56
 
INSERT INTO t1 (b,c) VALUES (1,2), (1,1), (2,2);
57
 
 
58
 
SELECT CONCAT(b,c), CONCAT(b,c) = '0101' FROM t1;
59
 
 
60
 
EXPLAIN EXTENDED SELECT b,c FROM t1 WHERE b = 1 AND CONCAT(b,c) = '0101';
61
 
SELECT b,c FROM t1 WHERE b = 1 AND CONCAT(b,c) = '0101';
62
 
 
63
 
CREATE TABLE t2 (a int);
64
 
INSERT INTO t2 VALUES (1),(2);
65
 
 
66
 
SELECT a, 
67
 
  (SELECT COUNT(*) FROM t1 
68
 
   WHERE b = t2.a AND CONCAT(b,c) = CONCAT('0',t2.a,'01')) x 
69
 
FROM t2 ORDER BY a;
70
 
 
71
 
EXPLAIN EXTENDED 
72
 
SELECT a, 
73
 
  (SELECT COUNT(*) FROM t1 
74
 
   WHERE b = t2.a AND CONCAT(b,c) = CONCAT('0',t2.a,'01')) x 
75
 
FROM t2 ORDER BY a;
76
 
 
77
 
DROP TABLE t1,t2;
78
 
 
79
 
--echo End of 5.0 tests