use test; --disable_warnings DROP TABLE IF EXISTS T1; --enable_warnings set @var_0= -1; set @var_1= -1; set @var_1= NULL; set @var_2= CAST(-1 AS SIGNED INTEGER); set @var_3= CAST(NULL AS SIGNED INTEGER); set @var_4= CAST(NULL AS UNSIGNED INTEGER); set @var_5= 'TEXT' ; --enable_metadata SELECT @var_0 as f0, @var_1 as f1, @var_2 as f2, @var_3 as f3, @var_4 as f4, @var_5 as f5 ; --disable_metadata CREATE TABLE T1 AS SELECT @var_0 as f0, @var_1 as f1, @var_2 as f2, @var_3 as f3, @var_4 as f4, @var_5 as f5 ; SHOW CREATE TABLE T1; DROP TABLE T1; # The direct way without uservariable CREATE TABLE T1 AS SELECT -1 as f0, CAST(-1 AS SIGNED INTEGER) as f1, CAST(NULL AS SIGNED INTEGER) as f2, CAST(NULL AS UNSIGNED INTEGER) as f3, 'TEXT' as f4; SHOW CREATE TABLE T1; DROP TABLE T1;