1
DROP TABLE IF EXISTS t1;
2
DROP TABLE IF EXISTS t2;
3
CREATE TABLE t1 (c1 INT, c2 CHAR(100),c3 FLOAT);
4
INSERT INTO t1 VALUES (null,null,0.0);
5
INSERT INTO t1 VALUES (1,'',1.0);
6
INSERT INTO t1 VALUES (2,'abcde',2.0);
7
INSERT INTO t1 VALUES (100,'abcdefghij',3.0);
8
CREATE TABLE t2 (c1 INT, c2 VARCHAR(100));
9
INSERT INTO t2 VALUES (1,'abcde');
10
INSERT INTO t2 VALUES (2,'abcde');
11
SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1)
13
SELECT (SELECT c1, c2 FROM t2) FROM t1;
14
ERROR 42000: This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
15
SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2);
16
ERROR 21000: Subquery returns more than 1 row
17
UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2);
18
UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1);
19
ERROR HY000: You can't specify target table 't1' for update in FROM clause
22
CREATE TABLE t1 (c1 INT, c2 VARCHAR(100),c3 FLOAT);
23
INSERT INTO t1 VALUES (null,null,0.0);
24
INSERT INTO t1 VALUES (1,'',1.0);
25
INSERT INTO t1 VALUES (2,'abcde',2.0);
26
INSERT INTO t1 VALUES (100,'abcdefghij',3.0);
27
CREATE TABLE t2 (c1 INT, c2 VARCHAR(100));
28
INSERT INTO t2 VALUES (1,'abcde');
29
INSERT INTO t2 VALUES (2,'abcde');
30
SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1)
32
SELECT (SELECT c1, c2 FROM t2) FROM t1;
33
ERROR 42000: This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
34
SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2);
35
ERROR 21000: Subquery returns more than 1 row
36
UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2);
37
UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1);
38
ERROR HY000: You can't specify target table 't1' for update in FROM clause
41
CREATE TABLE t1 (c1 INT, c2 BINARY(100),c3 FLOAT);
42
INSERT INTO t1 VALUES (null,null,0.0);
43
INSERT INTO t1 VALUES (1,'',1.0);
44
INSERT INTO t1 VALUES (2,'abcde',2.0);
45
INSERT INTO t1 VALUES (100,'abcdefghij',3.0);
46
CREATE TABLE t2 (c1 INT, c2 VARCHAR(100));
47
INSERT INTO t2 VALUES (1,'abcde');
48
INSERT INTO t2 VALUES (2,'abcde');
49
SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1)
51
SELECT (SELECT c1, c2 FROM t2) FROM t1;
52
ERROR 42000: This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
53
SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2);
54
ERROR 21000: Subquery returns more than 1 row
55
UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2);
56
UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1);
57
ERROR HY000: You can't specify target table 't1' for update in FROM clause
60
CREATE TABLE t1 (c1 INT, c2 VARBINARY(100),c3 FLOAT);
61
INSERT INTO t1 VALUES (null,null,0.0);
62
INSERT INTO t1 VALUES (1,'',1.0);
63
INSERT INTO t1 VALUES (2,'abcde',2.0);
64
INSERT INTO t1 VALUES (100,'abcdefghij',3.0);
65
CREATE TABLE t2 (c1 INT, c2 VARCHAR(100));
66
INSERT INTO t2 VALUES (1,'abcde');
67
INSERT INTO t2 VALUES (2,'abcde');
68
SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1)
70
SELECT (SELECT c1, c2 FROM t2) FROM t1;
71
ERROR 42000: This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
72
SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2);
73
ERROR 21000: Subquery returns more than 1 row
74
UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2);
75
UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1);
76
ERROR HY000: You can't specify target table 't1' for update in FROM clause