mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Create 'main' test directory and move 't' and 'r' there
This commit is contained in:
88
mysql-test/main/func_isnull.test
Normal file
88
mysql-test/main/func_isnull.test
Normal file
@ -0,0 +1,88 @@
|
||||
#
|
||||
# test of ISNULL()
|
||||
#
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists t1;
|
||||
--enable_warnings
|
||||
|
||||
create table t1 (id int auto_increment primary key not null, mydate date not null);
|
||||
insert into t1 values (0,"2002-05-01"),(0,"2002-05-01"),(0,"2002-05-01");
|
||||
flush tables;
|
||||
select * from t1 where isnull(to_days(mydate));
|
||||
drop table t1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
||||
--echo #
|
||||
--echo # Bug#53933 crash when using uncacheable subquery in the having clause of outer query
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (f1 INT);
|
||||
INSERT INTO t1 VALUES (0),(0);
|
||||
|
||||
SELECT ISNULL((SELECT GET_LOCK('Bug#53933', 0) FROM t1 GROUP BY f1)) AS f2
|
||||
FROM t1 GROUP BY f1 HAVING f2 = f2;
|
||||
SELECT RELEASE_LOCK('Bug#53933');
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo End of 5.0 tests
|
||||
|
||||
#
|
||||
# Bug #41371 Select returns 1 row with condition "col is not null and col is null"
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY(id));
|
||||
INSERT INTO t1( id ) VALUES ( NULL );
|
||||
SELECT t1.id FROM t1 WHERE (id is not null and id is null );
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo # End of 5.1 tests
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-14911: IS NULL for field from mergeable view
|
||||
--echo #
|
||||
|
||||
CREATE TABLE t1 (d1 datetime NOT NULL);
|
||||
INSERT INTO t1 VALUES
|
||||
('0000-00-00 00:00:00'), ('0000-00-00 00:00:00'), ('1979-09-03 20:49:36');
|
||||
|
||||
SELECT * FROM t1;
|
||||
SELECT * FROM t1 WHERE d1 IS NULL;
|
||||
EXPLAIN EXTENDED SELECT * FROM t1 WHERE d1 IS NULL;
|
||||
SELECT count(*) FROM t1 WHERE d1 IS NULL;
|
||||
|
||||
CREATE VIEW v1 AS (SELECT * FROM t1);
|
||||
SELECT * FROM v1;
|
||||
SELECT * FROM v1 WHERE d1 IS NULL;
|
||||
EXPLAIN EXTENDED SELECT * FROM v1 WHERE d1 IS NULL;
|
||||
SELECT count(*) FROM v1 WHERE d1 IS NULL;
|
||||
|
||||
SET @save_optimizer_switch=@@optimizer_switch;
|
||||
|
||||
SET SESSION optimizer_switch='derived_merge=off';
|
||||
SELECT count(*) FROM ( SELECT * FROM t1 ) AS a1 WHERE d1 IS NULL;
|
||||
SET SESSION optimizer_switch='derived_merge=on';
|
||||
SELECT count(*) FROM ( SELECT * FROM t1 ) AS a1 WHERE d1 IS NULL;
|
||||
|
||||
SET optimizer_switch=@save_optimizer_switch;
|
||||
|
||||
CREATE TABLE t2 (d1 datetime NOT NULL);
|
||||
INSERT INTO t2 VALUES
|
||||
('1980-09-03 20:49:36'), ('0000-00-00 00:00:00'), ('1979-09-03 20:49:36');
|
||||
|
||||
SELECT * FROM t2 LEFT JOIN t1 ON t2.d1=t1.d1 WHERE t1.d1 IS NULL;
|
||||
EXPLAIN EXTENDED
|
||||
SELECT * FROM t2 LEFT JOIN t1 ON t2.d1=t1.d1 WHERE t1.d1 IS NULL;
|
||||
|
||||
SELECT * FROM t2 LEFT JOIN v1 ON t2.d1=v1.d1 WHERE v1.d1 IS NULL;
|
||||
EXPLAIN EXTENDED
|
||||
SELECT * FROM t2 LEFT JOIN v1 ON t2.d1=v1.d1 WHERE v1.d1 IS NULL;
|
||||
|
||||
DROP VIEW v1;
|
||||
DROP TABLE t1,t2;
|
||||
|
||||
--echo #
|
||||
--echo # End of 5.5 tests
|
||||
--echo #
|
Reference in New Issue
Block a user