--disable_abort_on_error --disable_warnings drop table if exists t1 ; drop view if exists v1 ; --enable_warnings create table t1 ( f1 YEAR, id BIGINT ); # Show that the SELECT basically works SELECT IF(f1 IS NULL, 'IS NULL', 'IS NOT NULL'), f1, id FROM t1; # positive case -- There is an explicit column name. CREATE VIEW v1 AS SELECT IF(f1 IS NULL, 'IS NULL', 'IS NOT NULL') AS "my_boolean", f1, id FROM t1; SHOW CREATE VIEW v1; SELECT * FROM v1; DROP VIEW v1; # negative case -- There is no explicit column name. CREATE VIEW v1 AS SELECT IF(f1 IS NULL, 'IS NULL', 'IS NOT NULL'), f1, id FROM t1; SHOW CREATE VIEW v1; SELECT * FROM v1; DROP VIEW v1;