用于EagleEye3.0 规则集漏报和误报测试的示例项目,项目收集于github和gitee
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 lines
1.7 KiB

3 months ago
#
# BUG#46077 "wrong result: HAVING + ORDER BY + MyISAM + ICP
# returns extra rows"
#
CREATE TABLE `t1` (
`pk` int(11) NOT NULL AUTO_INCREMENT,
`int_key` int(11) NOT NULL,
PRIMARY KEY (`pk`),
KEY `int_key` (`int_key`)
) AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
Warnings:
Warning 1681 Integer display width is deprecated and will be removed in a future release.
Warning 1681 Integer display width is deprecated and will be removed in a future release.
INSERT INTO `t1` VALUES (1,7),(2,9);
SELECT `pk`, `int_key` field1
FROM t1 WHERE `pk` < 3
HAVING field1 < 8
ORDER BY field1;
pk field1
1 7
drop table `t1`;
#
# Bug#13406172: HAVING CLAUSE ON AGGREGATED COLUMN RETURNS
# WRONG RESULT WITH MYISAM
#
CREATE TABLE ot (i int) ENGINE=MyISAM;
INSERT INTO ot VALUES (1);
CREATE TABLE it (i int) ENGINE=MyISAM;
INSERT INTO it VALUES (7), (8);
SELECT COUNT(i) AS x
FROM ot
WHERE (i) IN (SELECT i FROM it WHERE it.i <= 4) OR i IS NULL
HAVING x > 1;
x
CREATE FUNCTION f(a INTEGER) RETURNS INTEGER DETERMINISTIC RETURN a*a;
SELECT BIT_AND(i) AS x
FROM ot
WHERE f(2) < 2
HAVING x < 2;
x
DROP TABLE it,ot;
DROP FUNCTION f;
# Bug#21067109: Assert 'join == __NULL' failed in ::optimize()
CREATE TABLE t1 (
col_int_key INT,
pk INT NOT NULL,
PRIMARY KEY (pk),
KEY col_int_key (col_int_key)
) ENGINE=MyISAM;
INSERT INTO t1 VALUES (6, 1);
CREATE TABLE t2 (
pk INT NOT NULL,
PRIMARY KEY (pk)
) ENGINE=MyISAM;
INSERT INTO t2 VALUES (5), (6), (7), (8);
SELECT col_int_key
FROM t1 AS alias1
HAVING (2, 7) NOT IN
(SELECT pk, SUM(pk)
FROM t1
WHERE pk <> (SELECT t2_alias1 .pk
FROM t2 AS t2_alias1 JOIN t2 AS t2_alias2
)
GROUP BY pk
);
ERROR 21000: Subquery returns more than 1 row
DROP TABLE t1, t2;