Still repeatable. Another test case:
DROP TABLE IF EXISTS t1; CREATE TABLE t1 (f2 varchar(32)) ; INSERT IGNORE INTO t1 VALUES (NULL), ('w');
DROP TABLE IF EXISTS t3; CREATE TABLE t3 ( f1 int, f2 varchar(32)) ; INSERT IGNORE INTO t3 VALUES (1,'x');
SELECT ( SELECT COUNT( t3.f1 ) FROM t3 WHERE t3.f2 != t1.f2 ) FROM t1;
Still repeatable. Another test case:
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (f2 varchar(32)) ;
INSERT IGNORE INTO t1 VALUES (NULL), ('w');
DROP TABLE IF EXISTS t3;
CREATE TABLE t3 ( f1 int, f2 varchar(32)) ;
INSERT IGNORE INTO t3 VALUES (1,'x');
SELECT (
SELECT COUNT( t3.f1 )
FROM t3
WHERE t3.f2 != t1.f2
) FROM t1;