From: imeevma@tarantool.org To: korablev@tarantool.org, tsafin@tarantool.org, tarantool-patches@dev.tarantool.org Subject: [Tarantool-patches] [PATCH v3 8/8] sql: show value and its type in type mismatch error Date: Thu, 25 Jun 2020 18:17:50 +0300 [thread overview] Message-ID: <7781d885cc6a0ea2a420984f88e2612115dbed81.1593096639.git.imeevma@gmail.com> (raw) In-Reply-To: <cover.1593096639.git.imeevma@gmail.com> After this patch value and its type will be shown in description of type mismatch error --- src/box/sql/vdbe.c | 17 +- src/box/sql/vdbemem.c | 13 +- test/sql-tap/autoinc.test.lua | 4 +- test/sql-tap/cast.test.lua | 16 +- .../gh-3809-implicit-cast-assignment.test.lua | 60 +- .../gh-4230-del-impl-cast-str-to-num.test.lua | 40 +- ...-4766-wrong-cast-from-blob-to-int.test.lua | 9 +- test/sql-tap/identifier_case.test.lua | 6 +- test/sql-tap/in1.test.lua | 2 +- test/sql-tap/in4.test.lua | 2 +- test/sql-tap/index1.test.lua | 4 +- test/sql-tap/join.test.lua | 4 +- test/sql-tap/misc1.test.lua | 2 +- test/sql-tap/numcast.test.lua | 4 +- test/sql-tap/select1.test.lua | 6 +- test/sql-tap/select5.test.lua | 2 +- test/sql-tap/subquery.test.lua | 2 +- test/sql-tap/tkt-80e031a00f.test.lua | 4 +- test/sql/boolean.result | 1484 ++++++++--------- test/sql/integer-overflow.result | 4 +- test/sql/persistency.result | 2 +- test/sql/types.result | 61 +- 22 files changed, 867 insertions(+), 881 deletions(-) diff --git a/src/box/sql/vdbe.c b/src/box/sql/vdbe.c index cabe5aa9e..2bc8c9817 100644 --- a/src/box/sql/vdbe.c +++ b/src/box/sql/vdbe.c @@ -2327,14 +2327,9 @@ case OP_Ge: { /* same as TK_GE, jump, in1, in3 */ int type_arg1 = flags1 & (MEM_Bool | MEM_Blob); int type_arg3 = flags3 & (MEM_Bool | MEM_Blob); if (type_arg1 != type_arg3) { - char *inconsistent_type = type_arg1 != 0 ? - mem_type_to_str(pIn3) : - mem_type_to_str(pIn1); - char *expected_type = type_arg1 != 0 ? - mem_type_to_str(pIn1) : - mem_type_to_str(pIn3); diag_set(ClientError, ER_SQL_TYPE_MISMATCH, - inconsistent_type, expected_type); + sql_value_to_diag_str(pIn3), + mem_type_to_str(pIn1)); goto abort_due_to_error; } res = sqlMemCompare(pIn3, pIn1, NULL); @@ -2386,13 +2381,13 @@ case OP_Ge: { /* same as TK_GE, jump, in1, in3 */ } else if (type == FIELD_TYPE_STRING) { if ((flags1 & MEM_Str) == 0) { diag_set(ClientError, ER_SQL_TYPE_MISMATCH, - mem_type_to_str(pIn3), + sql_value_to_diag_str(pIn3), mem_type_to_str(pIn1)); goto abort_due_to_error; } if ((flags3 & MEM_Str) == 0) { diag_set(ClientError, ER_SQL_TYPE_MISMATCH, - mem_type_to_str(pIn1), + sql_value_to_diag_str(pIn1), mem_type_to_str(pIn3)); goto abort_due_to_error; } @@ -3595,7 +3590,7 @@ skip_truncate: goto seek_not_found; } diag_set(ClientError, ER_SQL_TYPE_MISMATCH, - field_type_strs[type], mem_type_to_str(mem)); + sql_value_to_diag_str(mem), field_type_strs[type]); goto abort_due_to_error; } #ifdef SQL_DEBUG @@ -4740,7 +4735,7 @@ case OP_IdxGE: { /* jump */ (mem->flags & (MEM_Real | MEM_Int | MEM_UInt)) != 0) continue; diag_set(ClientError, ER_SQL_TYPE_MISMATCH, - field_type_strs[type], mem_type_to_str(mem)); + sql_value_to_diag_str(mem), mem_type_to_str(mem)); goto abort_due_to_error; } #ifdef SQL_DEBUG diff --git a/src/box/sql/vdbemem.c b/src/box/sql/vdbemem.c index a721afc83..bb7676354 100644 --- a/src/box/sql/vdbemem.c +++ b/src/box/sql/vdbemem.c @@ -1166,12 +1166,15 @@ sqlValueText(sql_value * pVal) const char * sql_value_to_diag_str(sql_value *value) { - if (sql_value_type(value) == MP_BIN) { - if (mem_has_msgpack_subtype(value)) - return sqlValueText(value); + if (sql_value_mp_type(value) == MP_BIN) return "varbinary"; - } - return sqlValueText(value); + char *type = mem_type_to_str(value); + char *str = (char *)sqlValueText(value); + if (str == NULL) + return "NULL"; + if (strlen(str) < 80) + return tt_sprintf("'%s' (type: %s)", str, type); + return tt_sprintf("'%.80s...' (type: %s)", str, type); } /* diff --git a/test/sql-tap/autoinc.test.lua b/test/sql-tap/autoinc.test.lua index 07442b60a..1547ffcd3 100755 --- a/test/sql-tap/autoinc.test.lua +++ b/test/sql-tap/autoinc.test.lua @@ -618,7 +618,7 @@ test:do_catchsql_test( INSERT INTO t2 VALUES('asd'); ]], { -- <autoinc-10.2> - 1, "Type mismatch: can not convert asd to integer" + 1, "Type mismatch: can not convert 'asd' (type: text) to integer" -- </autoinc-10.2> }) @@ -811,7 +811,7 @@ test:do_catchsql_test( INSERT INTO t1 SELECT s2, s2 FROM t1; ]], { -- <autoinc-gh-3670> - 1, "Type mismatch: can not convert a to integer" + 1, "Type mismatch: can not convert 'a' (type: text) to integer" -- </autoinc-gh-3670> }) diff --git a/test/sql-tap/cast.test.lua b/test/sql-tap/cast.test.lua index fb0790d04..ceb3e690f 100755 --- a/test/sql-tap/cast.test.lua +++ b/test/sql-tap/cast.test.lua @@ -450,7 +450,7 @@ test:do_catchsql_test( SELECT CAST('123abc' AS NUMBER) ]], { -- <cast-1.45> - 1, 'Type mismatch: can not convert 123abc to number' + 1, "Type mismatch: can not convert '123abc' (type: text) to number" -- </cast-1.45> }) @@ -470,7 +470,7 @@ test:do_catchsql_test( SELECT CAST('123abc' AS integer) ]], { -- <cast-1.49> - 1, 'Type mismatch: can not convert 123abc to integer' + 1, "Type mismatch: can not convert '123abc' (type: text) to integer" -- </cast-1.49> }) @@ -480,7 +480,7 @@ test:do_catchsql_test( SELECT CAST('123.5abc' AS NUMBER) ]], { -- <cast-1.51> - 1, 'Type mismatch: can not convert 123.5abc to number' + 1, "Type mismatch: can not convert '123.5abc' (type: text) to number" -- </cast-1.51> }) @@ -490,7 +490,7 @@ test:do_catchsql_test( SELECT CAST('123.5abc' AS integer) ]], { -- <cast-1.53> - 1, 'Type mismatch: can not convert 123.5abc to integer' + 1, "Type mismatch: can not convert '123.5abc' (type: text) to integer" -- </cast-1.53> }) @@ -561,7 +561,7 @@ test:do_catchsql_test( SELECT CAST('abc' AS NUMBER) ]], { -- <case-1.66> - 1, 'Type mismatch: can not convert abc to number' + 1, "Type mismatch: can not convert 'abc' (type: text) to number" -- </case-1.66> }) @@ -829,7 +829,7 @@ test:do_test( ]] end, { -- <cast-4.1> - 1, 'Type mismatch: can not convert abc to integer' + 1, "Type mismatch: can not convert 'abc' (type: text) to integer" -- </cast-4.1> }) @@ -841,7 +841,7 @@ test:do_test( ]] end, { -- <cast-4.2> - 1, 'Type mismatch: can not convert abc to integer' + 1, "Type mismatch: can not convert 'abc' (type: text) to integer" -- </cast-4.2> }) @@ -853,7 +853,7 @@ test:do_test( ]] end, { -- <cast-4.4> - 1, 'Type mismatch: can not convert abc to number' + 1, "Type mismatch: can not convert 'abc' (type: text) to number" -- </cast-4.4> }) diff --git a/test/sql-tap/gh-3809-implicit-cast-assignment.test.lua b/test/sql-tap/gh-3809-implicit-cast-assignment.test.lua index a1809b3cb..f1edfa0f6 100755 --- a/test/sql-tap/gh-3809-implicit-cast-assignment.test.lua +++ b/test/sql-tap/gh-3809-implicit-cast-assignment.test.lua @@ -28,7 +28,7 @@ test:do_catchsql_test( [[ INSERT INTO ti(i) VALUES (100000000000000000000000000000000.1) ]], { - 1, "Type mismatch: can not convert 1.0e+32 to integer" + 1, "Type mismatch: can not convert '1.0e+32' (type: real) to integer" }) test:do_catchsql_test( @@ -44,7 +44,7 @@ test:do_catchsql_test( [[ INSERT INTO ti(i) VALUES (true) ]], { - 1, "Type mismatch: can not convert TRUE to integer" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to integer" }) test:do_catchsql_test( @@ -52,7 +52,7 @@ test:do_catchsql_test( [[ INSERT INTO ti(i) VALUES ('33') ]], { - 1, "Type mismatch: can not convert 33 to integer" + 1, "Type mismatch: can not convert '33' (type: text) to integer" }) test:do_catchsql_test( @@ -100,7 +100,7 @@ test:do_catchsql_test( [[ INSERT INTO td(d) VALUES (true) ]], { - 1, "Type mismatch: can not convert TRUE to double" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to double" }) test:do_catchsql_test( @@ -108,7 +108,7 @@ test:do_catchsql_test( [[ INSERT INTO td(d) VALUES ('33') ]], { - 1, "Type mismatch: can not convert 33 to double" + 1, "Type mismatch: can not convert '33' (type: text) to double" }) test:do_catchsql_test( @@ -132,7 +132,7 @@ test:do_catchsql_test( [[ INSERT INTO tb(b) VALUES (11) ]], { - 1, "Type mismatch: can not convert 11 to boolean" + 1, "Type mismatch: can not convert '11' (type: unsigned) to boolean" }) test:do_catchsql_test( @@ -140,7 +140,7 @@ test:do_catchsql_test( [[ INSERT INTO tb(b) VALUES (22.2) ]], { - 1, "Type mismatch: can not convert 22.2 to boolean" + 1, "Type mismatch: can not convert '22.2' (type: real) to boolean" }) test:do_catchsql_test( @@ -156,7 +156,7 @@ test:do_catchsql_test( [[ INSERT INTO tb(b) VALUES ('33') ]], { - 1, "Type mismatch: can not convert 33 to boolean" + 1, "Type mismatch: can not convert '33' (type: text) to boolean" }) test:do_catchsql_test( @@ -180,7 +180,7 @@ test:do_catchsql_test( [[ INSERT INTO tt(t) VALUES (11) ]], { - 1, "Type mismatch: can not convert 11 to string" + 1, "Type mismatch: can not convert '11' (type: unsigned) to string" }) test:do_catchsql_test( @@ -188,7 +188,7 @@ test:do_catchsql_test( [[ INSERT INTO tt(t) VALUES (22.2) ]], { - 1, "Type mismatch: can not convert 22.2 to string" + 1, "Type mismatch: can not convert '22.2' (type: real) to string" }) test:do_catchsql_test( @@ -196,7 +196,7 @@ test:do_catchsql_test( [[ INSERT INTO tt(t) VALUES (true) ]], { - 1, "Type mismatch: can not convert TRUE to string" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to string" }) test:do_catchsql_test( @@ -228,7 +228,7 @@ test:do_catchsql_test( [[ INSERT INTO tv(v) VALUES (11) ]], { - 1, "Type mismatch: can not convert 11 to varbinary" + 1, "Type mismatch: can not convert '11' (type: unsigned) to varbinary" }) test:do_catchsql_test( @@ -236,7 +236,7 @@ test:do_catchsql_test( [[ INSERT INTO tv(v) VALUES (22.2) ]], { - 1, "Type mismatch: can not convert 22.2 to varbinary" + 1, "Type mismatch: can not convert '22.2' (type: real) to varbinary" }) test:do_catchsql_test( @@ -244,7 +244,7 @@ test:do_catchsql_test( [[ INSERT INTO tv(v) VALUES (true) ]], { - 1, "Type mismatch: can not convert TRUE to varbinary" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to varbinary" }) test:do_catchsql_test( @@ -252,7 +252,7 @@ test:do_catchsql_test( [[ INSERT INTO tv(v) VALUES ('33') ]], { - 1, "Type mismatch: can not convert 33 to varbinary" + 1, "Type mismatch: can not convert '33' (type: text) to varbinary" }) test:do_catchsql_test( @@ -359,7 +359,7 @@ test:do_catchsql_test( [[ UPDATE ti SET i = 100000000000000000000000000000000.1 WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 1.0e+32 to integer" + 1, "Type mismatch: can not convert '1.0e+32' (type: real) to integer" }) test:do_catchsql_test( @@ -375,7 +375,7 @@ test:do_catchsql_test( [[ UPDATE ti SET i = true WHERE a = 1; ]], { - 1, "Type mismatch: can not convert TRUE to integer" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to integer" }) test:do_catchsql_test( @@ -383,7 +383,7 @@ test:do_catchsql_test( [[ UPDATE ti SET i = '33' WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 33 to integer" + 1, "Type mismatch: can not convert '33' (type: text) to integer" }) test:do_catchsql_test( @@ -431,7 +431,7 @@ test:do_catchsql_test( [[ UPDATE td SET d = true WHERE a = 1; ]], { - 1, "Type mismatch: can not convert TRUE to double" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to double" }) test:do_catchsql_test( @@ -439,7 +439,7 @@ test:do_catchsql_test( [[ UPDATE td SET d = '33' WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 33 to double" + 1, "Type mismatch: can not convert '33' (type: text) to double" }) test:do_catchsql_test( @@ -463,7 +463,7 @@ test:do_catchsql_test( [[ UPDATE tb SET b = 11 WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 11 to boolean" + 1, "Type mismatch: can not convert '11' (type: unsigned) to boolean" }) test:do_catchsql_test( @@ -471,7 +471,7 @@ test:do_catchsql_test( [[ UPDATE tb SET b = 22.2 WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 22.2 to boolean" + 1, "Type mismatch: can not convert '22.2' (type: real) to boolean" }) test:do_catchsql_test( @@ -487,7 +487,7 @@ test:do_catchsql_test( [[ UPDATE tb SET b = '33' WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 33 to boolean" + 1, "Type mismatch: can not convert '33' (type: text) to boolean" }) test:do_catchsql_test( @@ -511,7 +511,7 @@ test:do_catchsql_test( [[ UPDATE tt SET t = 11 WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 11 to string" + 1, "Type mismatch: can not convert '11' (type: unsigned) to string" }) test:do_catchsql_test( @@ -519,7 +519,7 @@ test:do_catchsql_test( [[ UPDATE tt SET t = 22.2 WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 22.2 to string" + 1, "Type mismatch: can not convert '22.2' (type: real) to string" }) test:do_catchsql_test( @@ -527,7 +527,7 @@ test:do_catchsql_test( [[ UPDATE tt SET t = true WHERE a = 1; ]], { - 1, "Type mismatch: can not convert TRUE to string" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to string" }) test:do_catchsql_test( @@ -559,7 +559,7 @@ test:do_catchsql_test( [[ UPDATE tv SET v = 11 WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 11 to varbinary" + 1, "Type mismatch: can not convert '11' (type: unsigned) to varbinary" }) test:do_catchsql_test( @@ -567,7 +567,7 @@ test:do_catchsql_test( [[ UPDATE tv SET v = 22.2 WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 22.2 to varbinary" + 1, "Type mismatch: can not convert '22.2' (type: real) to varbinary" }) test:do_catchsql_test( @@ -575,7 +575,7 @@ test:do_catchsql_test( [[ UPDATE tv SET v = true WHERE a = 1; ]], { - 1, "Type mismatch: can not convert TRUE to varbinary" + 1, "Type mismatch: can not convert 'TRUE' (type: boolean) to varbinary" }) test:do_catchsql_test( @@ -583,7 +583,7 @@ test:do_catchsql_test( [[ UPDATE tv SET v = '33' WHERE a = 1; ]], { - 1, "Type mismatch: can not convert 33 to varbinary" + 1, "Type mismatch: can not convert '33' (type: text) to varbinary" }) test:do_catchsql_test( diff --git a/test/sql-tap/gh-4230-del-impl-cast-str-to-num.test.lua b/test/sql-tap/gh-4230-del-impl-cast-str-to-num.test.lua index b405a11b6..536e414ba 100755 --- a/test/sql-tap/gh-4230-del-impl-cast-str-to-num.test.lua +++ b/test/sql-tap/gh-4230-del-impl-cast-str-to-num.test.lua @@ -11,7 +11,7 @@ test:do_catchsql_test( [[ SELECT '1' > 0; ]], { - 1, "Type mismatch: can not convert 1 to numeric" + 1, "Type mismatch: can not convert '1' (type: text) to numeric" }) test:do_catchsql_test( @@ -19,7 +19,7 @@ test:do_catchsql_test( [[ SELECT 0 > '1'; ]], { - 1, "Type mismatch: can not convert 1 to numeric" + 1, "Type mismatch: can not convert '1' (type: text) to numeric" }) test:execsql([[ @@ -32,7 +32,7 @@ test:do_catchsql_test( [[ SELECT * from t where i > s; ]], { - 1, "Type mismatch: can not convert 2 to numeric" + 1, "Type mismatch: can not convert '2' (type: text) to numeric" }) test:do_catchsql_test( @@ -40,7 +40,7 @@ test:do_catchsql_test( [[ SELECT * from t WHERE s > i; ]], { - 1, "Type mismatch: can not convert 2 to numeric" + 1, "Type mismatch: can not convert '2' (type: text) to numeric" }) test:do_catchsql_test( @@ -48,7 +48,7 @@ test:do_catchsql_test( [[ SELECT * from t WHERE d > s; ]], { - 1, "Type mismatch: can not convert 2 to numeric" + 1, "Type mismatch: can not convert '2' (type: text) to numeric" }) test:do_catchsql_test( @@ -56,7 +56,7 @@ test:do_catchsql_test( [[ SELECT * from t WHERE s > d; ]], { - 1, "Type mismatch: can not convert 2 to numeric" + 1, "Type mismatch: can not convert '2' (type: text) to numeric" }) test:do_catchsql_test( @@ -64,7 +64,7 @@ test:do_catchsql_test( [[ SELECT * from t WHERE i = 1 and n > s; ]], { - 1, "Type mismatch: can not convert 2 to numeric" + 1, "Type mismatch: can not convert '2' (type: text) to numeric" }) test:do_catchsql_test( @@ -72,7 +72,7 @@ test:do_catchsql_test( [[ SELECT * from t WHERE i = 2 and s > n; ]], { - 1, "Type mismatch: can not convert 2 to numeric" + 1, "Type mismatch: can not convert '2' (type: text) to numeric" }) test:execsql([[ @@ -89,7 +89,7 @@ test:do_catchsql_test( [[ SELECT x FROM t1 WHERE x IN (1); ]], { - 1, "Type mismatch: can not convert 1 to numeric" + 1, "Type mismatch: can not convert '1' (type: text) to numeric" }) @@ -98,7 +98,7 @@ test:do_catchsql_test( [[ SELECT x FROM t1 WHERE x IN (1.0); ]], { - 1, "Type mismatch: can not convert 1 to numeric" + 1, "Type mismatch: can not convert '1' (type: text) to numeric" }) test:do_execsql_test( @@ -121,7 +121,7 @@ test:do_catchsql_test( [[ SELECT x FROM t1 WHERE 1 IN (x); ]], { - 1, "Type mismatch: can not convert 1 to numeric" + 1, "Type mismatch: can not convert '1' (type: text) to numeric" }) test:do_catchsql_test( @@ -129,7 +129,7 @@ test:do_catchsql_test( [[ SELECT x FROM t1 WHERE 1.0 IN (x); ]], { - 1, "Type mismatch: can not convert 1 to numeric" + 1, "Type mismatch: can not convert '1' (type: text) to numeric" }) test:do_execsql_test( @@ -171,7 +171,7 @@ test:do_catchsql_test( [[ SELECT x FROM t2 WHERE x IN ('1'); ]], { - 1, "Type mismatch: can not convert integer to text" + 1, "Type mismatch: can not convert '1' (type: text) to integer" }) test:do_catchsql_test( @@ -179,7 +179,7 @@ test:do_catchsql_test( [[ SELECT x FROM t2 WHERE x IN ('1.0'); ]], { - 1, "Type mismatch: can not convert integer to text" + 1, "Type mismatch: can not convert '1.0' (type: text) to integer" }) test:do_execsql_test( @@ -203,7 +203,7 @@ test:do_catchsql_test( [[ SELECT x FROM t2 WHERE '1' IN (x); ]], { - 1, "Type mismatch: can not convert integer to text" + 1, "Type mismatch: can not convert '1' (type: text) to integer" }) test:do_catchsql_test( @@ -211,7 +211,7 @@ test:do_catchsql_test( [[ SELECT x FROM t2 WHERE '1.0' IN (x); ]], { - 1, "Type mismatch: can not convert integer to text" + 1, "Type mismatch: can not convert '1.0' (type: text) to integer" }) test:do_execsql_test( @@ -235,7 +235,7 @@ test:do_catchsql_test( [[ SELECT x FROM t3 WHERE x IN ('1'); ]], { - 1, "Type mismatch: can not convert double to text" + 1, "Type mismatch: can not convert '1' (type: text) to double" }) test:do_catchsql_test( @@ -243,7 +243,7 @@ test:do_catchsql_test( [[ SELECT x FROM t3 WHERE x IN ('1.0'); ]], { - 1, "Type mismatch: can not convert double to text" + 1, "Type mismatch: can not convert '1.0' (type: text) to double" }) test:do_execsql_test( @@ -267,7 +267,7 @@ test:do_catchsql_test( [[ SELECT x FROM t3 WHERE '1' IN (x); ]], { - 1, "Type mismatch: can not convert double to text" + 1, "Type mismatch: can not convert '1' (type: text) to double" }) test:do_catchsql_test( @@ -275,7 +275,7 @@ test:do_catchsql_test( [[ SELECT x FROM t3 WHERE '1.0' IN (x); ]], { - 1, "Type mismatch: can not convert double to text" + 1, "Type mismatch: can not convert '1.0' (type: text) to double" }) test:finish_test() diff --git a/test/sql-tap/gh-4766-wrong-cast-from-blob-to-int.test.lua b/test/sql-tap/gh-4766-wrong-cast-from-blob-to-int.test.lua index 929870d27..4fdd03b42 100755 --- a/test/sql-tap/gh-4766-wrong-cast-from-blob-to-int.test.lua +++ b/test/sql-tap/gh-4766-wrong-cast-from-blob-to-int.test.lua @@ -32,14 +32,7 @@ test:do_execsql_test( test:do_catchsql_test( "gh-4766-3", "SELECT CAST('" .. long_str .. "1234'" .. " AS INTEGER);", { - 1, "Type mismatch: can not convert 000000000000000000000000000000000" .. - "0000000000000000000000000000000000000000000000000000000000000000000" .. - "0000000000000000000000000000000000000000000000000000000000000000000" .. - "0000000000000000000000000000000000000000000000000000000000000000000" .. - "0000000000000000000000000000000000000000000000000000000000000000000" .. - "0000000000000000000000000000000000000000000000000000000000000000000" .. - "0000000000000000000000000000000000000000000000000000000000000000000" .. - "000000000000000000000000000000000000000000000" + 1, "Type mismatch: can not convert '00000000000000000000000000000000000000000000000000000000000000000000000000000000...' (type: text) to integer" }) test:finish_test() diff --git a/test/sql-tap/identifier_case.test.lua b/test/sql-tap/identifier_case.test.lua index 1d56ffb44..96458ada8 100755 --- a/test/sql-tap/identifier_case.test.lua +++ b/test/sql-tap/identifier_case.test.lua @@ -242,11 +242,11 @@ data = { { 2, [[ 'a' < 'b' collate "binary" ]], {0, {true}}}, { 3, [[ 'a' < 'b' collate 'binary' ]], {1, [[Syntax error at line 1 near ''binary'']]}}, { 4, [[ 'a' < 'b' collate "unicode" ]], {0, {true}}}, - { 5, [[ 5 < 'b' collate "unicode" ]], {1, "Type mismatch: can not convert b to numeric"}}, + { 5, [[ 5 < 'b' collate "unicode" ]], {1, "Type mismatch: can not convert 'b' (type: text) to numeric"}}, { 6, [[ 5 < 'b' collate unicode ]], {1,"Collation 'UNICODE' does not exist"}}, - { 7, [[ 5 < 'b' collate "unicode_ci" ]], {1, "Type mismatch: can not convert b to numeric"}}, + { 7, [[ 5 < 'b' collate "unicode_ci" ]], {1, "Type mismatch: can not convert 'b' (type: text) to numeric"}}, { 8, [[ 5 < 'b' collate NONE ]], {1, "Collation 'NONE' does not exist"}}, - { 9, [[ 5 < 'b' collate "none" ]], {1, "Type mismatch: can not convert b to numeric"}}, + { 9, [[ 5 < 'b' collate "none" ]], {1, "Type mismatch: can not convert 'b' (type: text) to numeric"}}, } for _, row in ipairs(data) do diff --git a/test/sql-tap/in1.test.lua b/test/sql-tap/in1.test.lua index e2f498889..c55271eeb 100755 --- a/test/sql-tap/in1.test.lua +++ b/test/sql-tap/in1.test.lua @@ -642,7 +642,7 @@ test:do_test( ]] end, { -- <in-11.2> - 1, "Type mismatch: can not convert 2 to numeric" + 1, "Type mismatch: can not convert '2' (type: text) to numeric" -- </in-11.2> }) diff --git a/test/sql-tap/in4.test.lua b/test/sql-tap/in4.test.lua index a494e846f..1840841b0 100755 --- a/test/sql-tap/in4.test.lua +++ b/test/sql-tap/in4.test.lua @@ -153,7 +153,7 @@ test:do_catchsql_test( SELECT b FROM t2 WHERE a IN ('', '0.0.0', '2') ]], { -- <in4-2.8> - 1, "Type mismatch: can not convert integer to text" + 1, "Type mismatch: can not convert '' (type: text) to integer" -- </in4-2.8> }) diff --git a/test/sql-tap/index1.test.lua b/test/sql-tap/index1.test.lua index ce66b7c1e..d6a837e05 100755 --- a/test/sql-tap/index1.test.lua +++ b/test/sql-tap/index1.test.lua @@ -777,7 +777,7 @@ test:do_catchsql_test( SELECT c FROM t6 WHERE a>123; ]], { -- <index-14.6> - 1, "Type mismatch: can not convert to numeric" + 1, "Type mismatch: can not convert '' (type: text) to numeric" -- </index-14.6> }) @@ -787,7 +787,7 @@ test:do_catchsql_test( SELECT c FROM t6 WHERE a>=123; ]], { -- <index-14.7> - 1, "Type mismatch: can not convert to numeric" + 1, "Type mismatch: can not convert '' (type: text) to numeric" -- </index-14.7> }) diff --git a/test/sql-tap/join.test.lua b/test/sql-tap/join.test.lua index 792302ab5..7068f0865 100755 --- a/test/sql-tap/join.test.lua +++ b/test/sql-tap/join.test.lua @@ -1034,7 +1034,7 @@ test:do_catchsql_test( SELECT * FROM t1 NATURAL JOIN t2 ]], { -- <join-11.9> - 1, "Type mismatch: can not convert integer to text" + 1, "Type mismatch: can not convert '1' (type: text) to integer" -- </join-11.9> }) @@ -1044,7 +1044,7 @@ test:do_catchsql_test( SELECT * FROM t2 NATURAL JOIN t1 ]], { -- <join-11.10> - 1, "Type mismatch: can not convert 1 to numeric" + 1, "Type mismatch: can not convert '1' (type: text) to numeric" -- </join-11.10> }) diff --git a/test/sql-tap/misc1.test.lua b/test/sql-tap/misc1.test.lua index 3cef617f4..528076f00 100755 --- a/test/sql-tap/misc1.test.lua +++ b/test/sql-tap/misc1.test.lua @@ -625,7 +625,7 @@ test:do_catchsql_test( SELECT '0'==0.0 ]], { -- <misc1-12.2> - 1, "Type mismatch: can not convert 0 to numeric" + 1, "Type mismatch: can not convert '0' (type: text) to numeric" -- </misc1-12.2> }) diff --git a/test/sql-tap/numcast.test.lua b/test/sql-tap/numcast.test.lua index 3161e48fa..b5930daf3 100755 --- a/test/sql-tap/numcast.test.lua +++ b/test/sql-tap/numcast.test.lua @@ -107,7 +107,7 @@ test:do_catchsql_test( [[ SELECT CAST((20000000000000000000.) AS UNSIGNED); ]], { - 1,"Type mismatch: can not convert 2.0e+19 to unsigned" + 1,"Type mismatch: can not convert '2.0e+19' (type: real) to unsigned" }) test:do_execsql_test( @@ -135,7 +135,7 @@ test:do_catchsql_test( INSERT INTO t VALUES(20000000000000000000.01); SELECT * FROM t; ]], { - 1,"Type mismatch: can not convert 2.0e+19 to integer" + 1,"Type mismatch: can not convert '2.0e+19' (type: real) to integer" }) test:do_execsql_test( diff --git a/test/sql-tap/select1.test.lua b/test/sql-tap/select1.test.lua index f5a9b63fe..911f24341 100755 --- a/test/sql-tap/select1.test.lua +++ b/test/sql-tap/select1.test.lua @@ -320,7 +320,7 @@ test:do_catchsql_test( SELECT count(*),count(a),count(b) FROM t4 WHERE b=5 ]], { -- <select1-2.5.3> - 1, "Type mismatch: can not convert This is a string that is too big to fit inside a NBFS buffer to numeric" + 1, "Type mismatch: can not convert 'This is a string that is too big to fit inside a NBFS buffer' (type: text) to numeric" -- </select1-2.5.3> }) @@ -515,7 +515,7 @@ test:do_catchsql_test( SELECT sum(a) FROM t3 ]], { -- <select1-2.17.1> - 1, "Type mismatch: can not convert abc to number" + 1, "Type mismatch: can not convert 'abc' (type: text) to number" -- </select1-2.17.1> }) @@ -1483,7 +1483,7 @@ test:do_catchsql_test( SELECT f1 FROM test1 WHERE 4.3+2.4 OR 1 ORDER BY f1 ]], { -- <select1-8.1> - 1, 'Type mismatch: can not convert 6.7 to boolean' + 1, "Type mismatch: can not convert '6.7' (type: real) to boolean" -- </select1-8.1> }) diff --git a/test/sql-tap/select5.test.lua b/test/sql-tap/select5.test.lua index d34de3139..f87873b8e 100755 --- a/test/sql-tap/select5.test.lua +++ b/test/sql-tap/select5.test.lua @@ -558,7 +558,7 @@ test:do_catchsql_test( SELECT 1 FROM jj HAVING avg(s2) = 1 AND avg(s2) = 0; ]], { -- <select5-9.13.2> - 1, "Type mismatch: can not convert A to number" + 1, "Type mismatch: can not convert 'A' (type: text) to number" -- </select5-9.13.2> }) diff --git a/test/sql-tap/subquery.test.lua b/test/sql-tap/subquery.test.lua index bad702de9..2ef474930 100755 --- a/test/sql-tap/subquery.test.lua +++ b/test/sql-tap/subquery.test.lua @@ -290,7 +290,7 @@ test:do_catchsql_test( SELECT a IN (10.0, 20) FROM t3; ]], { -- <subquery-2.3.2> - 1, "Type mismatch: can not convert text to real" + 1, "Type mismatch: can not convert '10' (type: text) to real" -- </subquery-2.3.2> }) diff --git a/test/sql-tap/tkt-80e031a00f.test.lua b/test/sql-tap/tkt-80e031a00f.test.lua index a0e6539e0..8a10508d8 100755 --- a/test/sql-tap/tkt-80e031a00f.test.lua +++ b/test/sql-tap/tkt-80e031a00f.test.lua @@ -346,7 +346,7 @@ test:do_catchsql_test( SELECT 'hello' IN t1 ]], { -- <tkt-80e031a00f.27> - 1, 'Type mismatch: can not convert hello to integer' + 1, "Type mismatch: can not convert 'hello' (type: text) to integer" -- </tkt-80e031a00f.27> }) @@ -356,7 +356,7 @@ test:do_catchsql_test( SELECT 'hello' NOT IN t1 ]], { -- <tkt-80e031a00f.28> - 1, 'Type mismatch: can not convert hello to integer' + 1, "Type mismatch: can not convert 'hello' (type: text) to integer" -- </tkt-80e031a00f.28> }) diff --git a/test/sql/boolean.result b/test/sql/boolean.result index 112e41a12..80f88a481 100644 --- a/test/sql/boolean.result +++ b/test/sql/boolean.result @@ -138,12 +138,12 @@ INSERT INTO ts(s) VALUES ('abc'), (12.5); SELECT s FROM ts WHERE s = true; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT s FROM ts WHERE s < true; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT s FROM ts WHERE s IN (true, 1, 'abcd'); | --- @@ -161,7 +161,7 @@ SELECT s FROM ts WHERE s IN (true, 1, 'abcd'); INSERT INTO ts VALUES (true, 12345); | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... -- Check that we can create index on field of type BOOLEAN. @@ -339,7 +339,7 @@ SELECT typeof(a) FROM t0; SELECT AVG(a) FROM t0; | --- | - null - | - 'Type mismatch: can not convert FALSE to number' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to number' | ... SELECT MIN(a) FROM t0; | --- @@ -360,7 +360,7 @@ SELECT MAX(a) FROM t0; SELECT SUM(a) FROM t0; | --- | - null - | - 'Type mismatch: can not convert FALSE to number' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to number' | ... SELECT COUNT(a) FROM t0; | --- @@ -373,7 +373,7 @@ SELECT COUNT(a) FROM t0; SELECT TOTAL(a) FROM t0; | --- | - null - | - 'Type mismatch: can not convert FALSE to number' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to number' | ... SELECT GROUP_CONCAT(a, ' +++ ') FROM t0; | --- @@ -1120,438 +1120,438 @@ SELECT a, a1, a OR a1 FROM t, t6; SELECT -true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT -false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT -a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true + true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT true + false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT false + true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false + false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true - true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT true - false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT false - true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false - false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true * true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT true * false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT false * true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false * false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true / true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT true / false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT false / true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false / false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true % true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT true % false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT false % true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false % false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, true + a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, false + a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, true - a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, false - a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, true * a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, false * a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, true / a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, false / a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, true % a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, false % a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a + true FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a, a + false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a - true FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a, a - false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a * true FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a, a * false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a / true FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a, a / false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a % true FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a, a % false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a1, a + a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a1, a - a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a1, a * a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a1, a / a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a, a1, a % a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT ~true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT ~false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT true & true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT true & false; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false & true; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT false & false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT true | true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT true | false; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false | true; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT false | false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT true << true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT true << false; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false << true; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT false << false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT true >> true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT true >> false; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false >> true; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT false >> false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, true & a FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a, false & a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, true | a FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a, false | a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, true << a FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a, false << a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, true >> a FROM t; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a, false >> a FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a & true FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a & false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a | true FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a | false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a << true FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a << false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a >> true FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a >> false FROM t; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a1, a & a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a1, a | a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a1, a << a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a, a1, a >> a1 FROM t, t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... -- Check concatenate. @@ -2461,7 +2461,7 @@ INSERT INTO t7 VALUES (123); SELECT true AND 2; | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT false AND 2; | --- @@ -2474,17 +2474,17 @@ SELECT false AND 2; SELECT true OR 2; | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT false OR 2; | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 AND true; | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 AND false; | --- @@ -2497,59 +2497,59 @@ SELECT 2 AND false; SELECT 2 OR true; | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 OR false; | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, a1 AND 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, a1 OR 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, 2 AND a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, 2 OR a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, a2 AND 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, a2 OR 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, 2 AND a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, 2 OR a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2 to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT b, true AND b FROM t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, false AND b FROM t7; | --- @@ -2564,17 +2564,17 @@ SELECT b, false AND b FROM t7; SELECT b, true OR b FROM t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, false OR b FROM t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b AND true FROM t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b AND false FROM t7; | --- @@ -2589,1273 +2589,1273 @@ SELECT b, b AND false FROM t7; SELECT b, b OR true FROM t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b OR false FROM t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, a1 AND b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, a1 OR b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, b AND a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, b OR a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, a2 AND b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, a2 OR b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, b AND a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, b OR a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert 123 to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT true + 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false + 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true - 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false - 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true * 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false * 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true / 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false / 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true % 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false % 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2 + true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2 + false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2 - true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2 - false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2 * true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2 * false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2 / true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2 / false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2 % true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2 % false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 + 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 - 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 * 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 / 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 % 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2 + a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2 - a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2 * a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2 / a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2 % a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a2, a2 + 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 - 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 * 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 / 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 % 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2 + a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2 - a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2 * a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2 / a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2 % a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, true + b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, false + b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, true - b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, false - b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, true * b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, false * b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, true / b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, false / b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, true % b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, false % b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, b + true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, b + false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, b - true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, b - false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, b * true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, b * false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, b / true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, b / false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT b, b % true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT b, b % false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, a1 + b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, a1 - b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, a1 * b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, a1 / b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, a1 % b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, b + a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, b - a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, b * a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, b / a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, b, b % a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a2, b, a2 + b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, a2 - b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, a2 * b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, a2 / b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, a2 % b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, b + a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, b - a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, b * a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, b / a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, b, b % a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT true & 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false & 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT true | 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false | 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT true << 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false << 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT true >> 2; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false >> 2; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT 2 & true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT 2 & false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT 2 | true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT 2 | false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT 2 << true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT 2 << false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT 2 >> true; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT 2 >> false; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, a1 & 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, a1 | 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, a1 << 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, a1 >> 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, 2 & a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, 2 | a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, 2 << a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, 2 >> a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a2, a2 & 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, a2 | 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, a2 << 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, a2 >> 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, 2 & a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, 2 | a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, 2 << a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, 2 >> a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, true & b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, false & b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT b, true | b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, false | b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT b, true << b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, false << b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT b, true >> b FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, false >> b FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT b, b & true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, b & false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT b, b | true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, b | false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT b, b << true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, b << false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT b, b >> true FROM t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT b, b >> false FROM t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, a1 & b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, a1 | b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, a1 << b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, a1 >> b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, b & a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, b | a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, b << a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, b, b >> a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a2, b, a2 & b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, b, a2 | b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, b, a2 << b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, b, a2 >> b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, b, b & a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, b, b | a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, b, b << a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT a2, b, b >> a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT true > 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT false > 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT true < 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT false < 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT 2 > true; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 > false; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 < true; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 < false; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, a1 > 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, a1 < 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, 2 > a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, 2 < a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, a2 > 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, a2 < 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, 2 > a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, 2 < a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT b, true > b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT b, false > b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT b, true < b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT b, false < b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT b, b > true FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b > false FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b < true FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b < false FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, a1 > b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, b, a1 < b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, b, b > a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, b < a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, a2 > b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, b, a2 < b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, b, b > a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, b < a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT true >= 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT false >= 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT true <= 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT false <= 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT 2 >= true; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 >= false; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 <= true; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 <= false; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, a1 >= 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, a1 <= 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, 2 >= a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, 2 <= a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, a2 >= 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, a2 <= 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, 2 >= a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, 2 <= a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT b, true >= b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT b, false >= b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT b, true <= b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT b, false <= b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT b, b >= true FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b >= false FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b <= true FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b <= false FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, a1 >= b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, b, a1 <= b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, b, b >= a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, b <= a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, a2 >= b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, b, a2 <= b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, b, b >= a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, b <= a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT true == 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT false == 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT true != 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT false != 2; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT 2 == true; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 == false; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 != true; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT 2 != false; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, a1 == 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, a1 != 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, 2 == a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a1, 2 != a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, a2 == 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, a2 != 2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, 2 == a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT a2, 2 != a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''2'' (type: unsigned) to boolean' | ... SELECT b, true == b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT b, false == b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT b, true != b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT b, false != b FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT b, b == true FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b == false FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b != true FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT b, b != false FROM t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, a1 == b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, b, a1 != b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, b, b == a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a1, b, b != a1 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, a2 == b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, b, a2 != b FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT a2, b, b == a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT a2, b, b != a2 FROM t6, t7; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''123'' (type: unsigned) to boolean' | ... SELECT true IN (0, 1, 2, 3); @@ -3877,12 +3877,12 @@ SELECT false IN (0, 1, 2, 3); SELECT true IN (SELECT b FROM t7); | --- | - null - | - 'Type mismatch: can not convert TRUE to integer' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to integer' | ... SELECT false IN (SELECT b FROM t7); | --- | - null - | - 'Type mismatch: can not convert FALSE to integer' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to integer' | ... SELECT a1, a1 IN (0, 1, 2, 3) FROM t6 | --- @@ -3899,22 +3899,22 @@ SELECT a1, a1 IN (0, 1, 2, 3) FROM t6 SELECT true BETWEEN 0 and 10; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... SELECT false BETWEEN 0 and 10; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a1, a1 BETWEEN 0 and 10 FROM t6; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to unsigned' | ... SELECT a2, a2 BETWEEN 0 and 10 FROM t6; | --- | - null - | - 'Type mismatch: can not convert unsigned to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' | ... -- Check interaction of BOOLEAN and NUMBER. @@ -3930,7 +3930,7 @@ INSERT INTO t8 VALUES (4.56); SELECT true AND 2.3; | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT false AND 2.3; | --- @@ -3943,17 +3943,17 @@ SELECT false AND 2.3; SELECT true OR 2.3; | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT false OR 2.3; | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 AND true; | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 AND false; | --- @@ -3966,59 +3966,59 @@ SELECT 2.3 AND false; SELECT 2.3 OR true; | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 OR false; | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, a1 AND 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, a1 OR 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, 2.3 AND a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, 2.3 OR a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, a2 AND 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, a2 OR 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, 2.3 AND a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, 2.3 OR a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert 2.3 to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT c, true AND c FROM t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, false AND c FROM t8; | --- @@ -4033,17 +4033,17 @@ SELECT c, false AND c FROM t8; SELECT c, true OR c FROM t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, false OR c FROM t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c AND true FROM t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c AND false FROM t8; | --- @@ -4058,949 +4058,949 @@ SELECT c, c AND false FROM t8; SELECT c, c OR true FROM t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c OR false FROM t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, a1 AND c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, a1 OR c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, c AND a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, c OR a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, a2 AND c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, a2 OR c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, c AND a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, c OR a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert 4.56 to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT true + 2.3; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false + 2.3; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true - 2.3; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false - 2.3; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true * 2.3; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false * 2.3; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true / 2.3; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false / 2.3; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT true % 2.3; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT false % 2.3; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2.3 + true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2.3 + false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2.3 - true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2.3 - false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2.3 * true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2.3 * false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2.3 / true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2.3 / false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT 2.3 % true; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT 2.3 % false; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 + 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 - 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 * 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 / 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, a1 % 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2.3 + a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2.3 - a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2.3 * a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2.3 / a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, 2.3 % a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a2, a2 + 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 - 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 * 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 / 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, a2 % 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2.3 + a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2.3 - a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2.3 * a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2.3 / a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, 2.3 % a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, true + c FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, false + c FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, true - c FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, false - c FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, true * c FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, false * c FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, true / c FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, false / c FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, true % c FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, false % c FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, c + true FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, c + false FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, c - true FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, c - false FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, c * true FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, c * false FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, c / true FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, c / false FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT c, c % true FROM t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT c, c % false FROM t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, a1 + c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, a1 - c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, a1 * c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, a1 / c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, a1 % c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, c + a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, c - a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, c * a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, c / a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a1, c, c % a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert FALSE to numeric' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to numeric' | ... SELECT a2, c, a2 + c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, a2 - c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, a2 * c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, a2 / c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, a2 % c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, c + a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, c - a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, c * a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, c / a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT a2, c, c % a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert TRUE to numeric' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to numeric' | ... SELECT true > 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT false > 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT true < 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT false < 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT 2.3 > true; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 > false; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 < true; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 < false; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, a1 > 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, a1 < 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, 2.3 > a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, 2.3 < a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, a2 > 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, a2 < 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, 2.3 > a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, 2.3 < a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT c, true > c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT c, false > c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT c, true < c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT c, false < c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT c, c > true FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c > false FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c < true FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c < false FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, a1 > c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, c, a1 < c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, c, c > a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, c < a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, a2 > c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, c, a2 < c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, c, c > a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, c < a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT true >= 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT false >= 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT true <= 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT false <= 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT 2.3 >= true; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 >= false; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 <= true; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 <= false; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, a1 >= 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, a1 <= 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, 2.3 >= a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, 2.3 <= a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, a2 >= 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, a2 <= 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, 2.3 >= a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, 2.3 <= a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT c, true >= c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT c, false >= c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT c, true <= c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT c, false <= c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT c, c >= true FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c >= false FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c <= true FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c <= false FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, a1 >= c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, c, a1 <= c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, c, c >= a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, c <= a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, a2 >= c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, c, a2 <= c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, c, c >= a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, c <= a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT true == 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT false == 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT true != 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT false != 2.3; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT 2.3 == true; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 == false; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 != true; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT 2.3 != false; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, a1 == 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, a1 != 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, 2.3 == a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a1, 2.3 != a1 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, a2 == 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, a2 != 2.3 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, 2.3 == a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT a2, 2.3 != a2 FROM t6 | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''2.3'' (type: real) to boolean' | ... SELECT c, true == c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT c, false == c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT c, true != c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT c, false != c FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT c, c == true FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c == false FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c != true FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT c, c != false FROM t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, a1 == c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, c, a1 != c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, c, c == a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a1, c, c != a1 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, a2 == c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, c, a2 != c FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT a2, c, c == a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT a2, c, c != a2 FROM t6, t8; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''4.56'' (type: real) to boolean' | ... SELECT true IN (0.1, 1.2, 2.3, 3.4); @@ -5038,43 +5038,43 @@ SELECT a2 IN (0.1, 1.2, 2.3, 3.4) FROM t6 LIMIT 1; SELECT true IN (SELECT c FROM t8); | --- | - null - | - 'Type mismatch: can not convert TRUE to number' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to number' | ... SELECT false IN (SELECT c FROM t8); | --- | - null - | - 'Type mismatch: can not convert FALSE to number' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to number' | ... SELECT a1 IN (SELECT c FROM t8) FROM t6 LIMIT 1; | --- | - null - | - 'Type mismatch: can not convert FALSE to number' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to number' | ... SELECT a2 IN (SELECT c FROM t8) FROM t6 LIMIT 1; | --- | - null - | - 'Type mismatch: can not convert TRUE to number' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to number' | ... SELECT true BETWEEN 0.1 and 9.9; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... SELECT false BETWEEN 0.1 and 9.9; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a1, a1 BETWEEN 0.1 and 9.9 FROM t6; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to real' | ... SELECT a2, a2 BETWEEN 0.1 and 9.9 FROM t6; | --- | - null - | - 'Type mismatch: can not convert real to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' | ... -- Check interaction of BOOLEAN and TEXT. @@ -5090,7 +5090,7 @@ INSERT INTO t9 VALUES ('AsdF'); SELECT true AND 'abc'; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT false AND 'abc'; | --- @@ -5103,17 +5103,17 @@ SELECT false AND 'abc'; SELECT true OR 'abc'; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT false OR 'abc'; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT 'abc' AND true; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT 'abc' AND false; | --- @@ -5126,59 +5126,59 @@ SELECT 'abc' AND false; SELECT 'abc' OR true; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT 'abc' OR false; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a1, a1 AND 'abc' FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a1, a1 OR 'abc' FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a1, 'abc' AND a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a1, 'abc' OR a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a2, a2 AND 'abc' FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a2, a2 OR 'abc' FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a2, 'abc' AND a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT a2, 'abc' OR a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert abc to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT d, true AND d FROM t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, false AND d FROM t9; | --- @@ -5193,17 +5193,17 @@ SELECT d, false AND d FROM t9; SELECT d, true OR d FROM t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, false OR d FROM t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, d AND true FROM t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, d AND false FROM t9; | --- @@ -5218,176 +5218,176 @@ SELECT d, d AND false FROM t9; SELECT d, d OR true FROM t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, d OR false FROM t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a1, d, a1 AND d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a1, d, a1 OR d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a1, d, d AND a1 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a1, d, d OR a1 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a2, d, a2 AND d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a2, d, a2 OR d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a2, d, d AND a2 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a2, d, d OR a2 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert AsdF to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT true > 'abc'; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to text' | ... SELECT false > 'abc'; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to text' | ... SELECT true < 'abc'; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to text' | ... SELECT false < 'abc'; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to text' | ... SELECT 'abc' > true; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT 'abc' > false; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT 'abc' < true; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT 'abc' < false; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''abc'' (type: text) to boolean' | ... SELECT d, true > d FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to text' | ... SELECT d, false > d FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to text' | ... SELECT d, true < d FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to text' | ... SELECT d, false < d FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to text' | ... SELECT d, d > true FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, d > false FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, d < true FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT d, d < false FROM t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a1, d, a1 > d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to text' | ... SELECT a1, d, a1 < d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: boolean) to text' | ... SELECT a1, d, d > a1 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a1, d, d < a1 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a2, d, a2 > d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to text' | ... SELECT a2, d, a2 < d FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: boolean) to text' | ... SELECT a2, d, d > a2 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT a2, d, d < a2 FROM t6, t9; | --- | - null - | - 'Type mismatch: can not convert text to boolean' + | - 'Type mismatch: can not convert ''AsdF'' (type: text) to boolean' | ... SELECT true || 'abc'; @@ -5465,7 +5465,7 @@ INSERT INTO t9 VALUES ('TRUE'), ('true'), ('FALSE'), ('false'); SELECT true AND 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT false AND 'TRUE'; | --- @@ -5478,17 +5478,17 @@ SELECT false AND 'TRUE'; SELECT true OR 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT false OR 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT 'TRUE' AND true; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT 'TRUE' AND false; | --- @@ -5501,59 +5501,59 @@ SELECT 'TRUE' AND false; SELECT 'TRUE' OR true; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT 'TRUE' OR false; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, a1 AND 'TRUE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, a1 OR 'TRUE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, 'TRUE' AND a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, 'TRUE' OR a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, a2 AND 'TRUE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, a2 OR 'TRUE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, 'TRUE' AND a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, 'TRUE' OR a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT d, true AND d FROM t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT d, false AND d FROM t9 WHERE d = 'TRUE'; | --- @@ -5568,17 +5568,17 @@ SELECT d, false AND d FROM t9 WHERE d = 'TRUE'; SELECT d, true OR d FROM t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT d, false OR d FROM t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT d, d AND true FROM t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT d, d AND false FROM t9 WHERE d = 'TRUE'; | --- @@ -5593,59 +5593,59 @@ SELECT d, d AND false FROM t9 WHERE d = 'TRUE'; SELECT d, d OR true FROM t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT d, d OR false FROM t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, d, a1 AND d FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, d, a1 OR d FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, d, d AND a1 FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a1, d, d OR a1 FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, d, a2 AND d FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, d, a2 OR d FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, d, d AND a2 FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT a2, d, d OR a2 FROM t6, t9 WHERE d = 'TRUE'; | --- | - null - | - 'Type mismatch: can not convert TRUE to boolean' + | - 'Type mismatch: can not convert ''TRUE'' (type: text) to boolean' | ... SELECT true AND 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT false AND 'true'; | --- @@ -5658,17 +5658,17 @@ SELECT false AND 'true'; SELECT true OR 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT false OR 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT 'true' AND true; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT 'true' AND false; | --- @@ -5681,59 +5681,59 @@ SELECT 'true' AND false; SELECT 'true' OR true; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT 'true' OR false; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, a1 AND 'true' FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, a1 OR 'true' FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, 'true' AND a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, 'true' OR a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, a2 AND 'true' FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, a2 OR 'true' FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, 'true' AND a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, 'true' OR a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT d, true AND d FROM t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT d, false AND d FROM t9 WHERE d = 'true'; | --- @@ -5748,17 +5748,17 @@ SELECT d, false AND d FROM t9 WHERE d = 'true'; SELECT d, true OR d FROM t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT d, false OR d FROM t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT d, d AND true FROM t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT d, d AND false FROM t9 WHERE d = 'true'; | --- @@ -5773,59 +5773,59 @@ SELECT d, d AND false FROM t9 WHERE d = 'true'; SELECT d, d OR true FROM t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT d, d OR false FROM t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, d, a1 AND d FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, d, a1 OR d FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, d, d AND a1 FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a1, d, d OR a1 FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, d, a2 AND d FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, d, a2 OR d FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, d, d AND a2 FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT a2, d, d OR a2 FROM t6, t9 WHERE d = 'true'; | --- | - null - | - 'Type mismatch: can not convert true to boolean' + | - 'Type mismatch: can not convert ''true'' (type: text) to boolean' | ... SELECT true AND 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT false AND 'FALSE'; | --- @@ -5838,17 +5838,17 @@ SELECT false AND 'FALSE'; SELECT true OR 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT false OR 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT 'FALSE' AND true; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT 'FALSE' AND false; | --- @@ -5861,59 +5861,59 @@ SELECT 'FALSE' AND false; SELECT 'FALSE' OR true; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT 'FALSE' OR false; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, a1 AND 'FALSE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, a1 OR 'FALSE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, 'FALSE' AND a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, 'FALSE' OR a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, a2 AND 'FALSE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, a2 OR 'FALSE' FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, 'FALSE' AND a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, 'FALSE' OR a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT d, true AND d FROM t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT d, false AND d FROM t9 WHERE d = 'FALSE'; | --- @@ -5928,17 +5928,17 @@ SELECT d, false AND d FROM t9 WHERE d = 'FALSE'; SELECT d, true OR d FROM t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT d, false OR d FROM t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT d, d AND true FROM t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT d, d AND false FROM t9 WHERE d = 'FALSE'; | --- @@ -5953,59 +5953,59 @@ SELECT d, d AND false FROM t9 WHERE d = 'FALSE'; SELECT d, d OR true FROM t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT d, d OR false FROM t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, d, a1 AND d FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, d, a1 OR d FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, d, d AND a1 FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a1, d, d OR a1 FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, d, a2 AND d FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, d, a2 OR d FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, d, d AND a2 FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT a2, d, d OR a2 FROM t6, t9 WHERE d = 'FALSE'; | --- | - null - | - 'Type mismatch: can not convert FALSE to boolean' + | - 'Type mismatch: can not convert ''FALSE'' (type: text) to boolean' | ... SELECT true AND 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT false AND 'false'; | --- @@ -6018,17 +6018,17 @@ SELECT false AND 'false'; SELECT true OR 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT false OR 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT 'false' AND true; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT 'false' AND false; | --- @@ -6041,59 +6041,59 @@ SELECT 'false' AND false; SELECT 'false' OR true; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT 'false' OR false; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, a1 AND 'false' FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, a1 OR 'false' FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, 'false' AND a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, 'false' OR a1 FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, a2 AND 'false' FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, a2 OR 'false' FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, 'false' AND a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, 'false' OR a2 FROM t6; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT d, true AND d FROM t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT d, false AND d FROM t9 WHERE d = 'false'; | --- @@ -6108,17 +6108,17 @@ SELECT d, false AND d FROM t9 WHERE d = 'false'; SELECT d, true OR d FROM t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT d, false OR d FROM t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT d, d AND true FROM t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT d, d AND false FROM t9 WHERE d = 'false'; | --- @@ -6133,53 +6133,53 @@ SELECT d, d AND false FROM t9 WHERE d = 'false'; SELECT d, d OR true FROM t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT d, d OR false FROM t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, d, a1 AND d FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, d, a1 OR d FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, d, d AND a1 FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a1, d, d OR a1 FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, d, a2 AND d FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, d, a2 OR d FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, d, d AND a2 FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... SELECT a2, d, d OR a2 FROM t6, t9 WHERE d = 'false'; | --- | - null - | - 'Type mismatch: can not convert false to boolean' + | - 'Type mismatch: can not convert ''false'' (type: text) to boolean' | ... -- Cleaning. diff --git a/test/sql/integer-overflow.result b/test/sql/integer-overflow.result index 6269cb547..1048e594a 100644 --- a/test/sql/integer-overflow.result +++ b/test/sql/integer-overflow.result @@ -106,7 +106,7 @@ box.execute('SELECT CAST(\'9223372036854775808\' AS INTEGER);') box.execute('SELECT CAST(\'18446744073709551616\' AS INTEGER);') --- - null -- 'Type mismatch: can not convert 18446744073709551616 to integer' +- 'Type mismatch: can not convert ''18446744073709551616'' (type: text) to integer' ... -- Due to inexact represantation of large integers in terms of -- floating point numbers, numerics with value < UINT64_MAX @@ -117,7 +117,7 @@ box.execute('SELECT CAST(\'18446744073709551616\' AS INTEGER);') box.execute('SELECT CAST(18446744073709551600. AS INTEGER);') --- - null -- 'Type mismatch: can not convert 1.84467440737096e+19 to integer' +- 'Type mismatch: can not convert ''1.84467440737096e+19'' (type: real) to integer' ... -- gh-3810: make sure that if space contains integers in range -- [INT64_MAX, UINT64_MAX], they are handled inside SQL in a diff --git a/test/sql/persistency.result b/test/sql/persistency.result index 6d14d4c4e..14534bc51 100644 --- a/test/sql/persistency.result +++ b/test/sql/persistency.result @@ -370,7 +370,7 @@ box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\""); box.execute("INSERT INTO foobar VALUES ('foobar trigger test', 8888)") --- - null -- 'Type mismatch: can not convert foobar trigger test to integer' +- 'Type mismatch: can not convert ''foobar trigger test'' (type: text) to integer' ... box.execute("SELECT * FROM barfoo WHERE foo = 9999"); --- diff --git a/test/sql/types.result b/test/sql/types.result index 62161cfe1..d4975af85 100644 --- a/test/sql/types.result +++ b/test/sql/types.result @@ -270,7 +270,7 @@ box.space.T1:drop() box.execute("SELECT CAST('1.123' AS INTEGER);") --- - null -- 'Type mismatch: can not convert 1.123 to integer' +- 'Type mismatch: can not convert ''1.123'' (type: text) to integer' ... box.execute("CREATE TABLE t1 (f TEXT PRIMARY KEY);") --- @@ -283,7 +283,7 @@ box.execute("INSERT INTO t1 VALUES('0.0'), ('1.5'), ('3.9312453');") box.execute("SELECT CAST(f AS INTEGER) FROM t1;") --- - null -- 'Type mismatch: can not convert 0.0 to integer' +- 'Type mismatch: can not convert ''0.0'' (type: text) to integer' ... box.space.T1:drop() --- @@ -339,22 +339,22 @@ box.execute("INSERT INTO tboolean VALUES (TRUE);") box.execute("SELECT * FROM tboolean WHERE s1 = x'44';") --- - null -- 'Type mismatch: can not convert boolean to varbinary' +- 'Type mismatch: can not convert varbinary to boolean' ... box.execute("SELECT * FROM tboolean WHERE s1 = 'abc';") --- - null -- 'Type mismatch: can not convert boolean to text' +- 'Type mismatch: can not convert ''abc'' (type: text) to boolean' ... box.execute("SELECT * FROM tboolean WHERE s1 = 1;") --- - null -- 'Type mismatch: can not convert unsigned to boolean' +- 'Type mismatch: can not convert ''TRUE'' (type: boolean) to unsigned' ... box.execute("SELECT * FROM tboolean WHERE s1 = 1.123;") --- - null -- 'Type mismatch: can not convert real to boolean' +- 'Type mismatch: can not convert ''TRUE'' (type: boolean) to real' ... box.space.TBOOLEAN:drop() --- @@ -624,7 +624,7 @@ box.execute("SELECT 1 LIMIT 1 OFFSET 18446744073709551614;") box.execute("SELECT CAST('18446744073' || '709551616' AS INTEGER);") --- - null -- 'Type mismatch: can not convert 18446744073709551616 to integer' +- 'Type mismatch: can not convert ''18446744073709551616'' (type: text) to integer' ... box.execute("SELECT CAST('18446744073' || '709551615' AS INTEGER);") --- @@ -1054,7 +1054,7 @@ box.execute("INSERT INTO t1 VALUES (0), (1), (2);") box.execute("INSERT INTO t1 VALUES (-3);") --- - null -- 'Type mismatch: can not convert -3 to unsigned' +- 'Type mismatch: can not convert ''-3'' (type: integer) to unsigned' ... box.execute("SELECT id FROM t1;") --- @@ -1077,7 +1077,7 @@ box.execute("SELECT CAST(123 AS UNSIGNED);") box.execute("SELECT CAST(-123 AS UNSIGNED);") --- - null -- 'Type mismatch: can not convert -123 to unsigned' +- 'Type mismatch: can not convert ''-123'' (type: integer) to unsigned' ... box.execute("SELECT CAST(1.5 AS UNSIGNED);") --- @@ -1114,7 +1114,7 @@ box.execute("SELECT CAST('123' AS UNSIGNED);") box.execute("SELECT CAST('-123' AS UNSIGNED);") --- - null -- 'Type mismatch: can not convert -123 to unsigned' +- 'Type mismatch: can not convert ''-123'' (type: text) to unsigned' ... box.space.T1:drop() --- @@ -1212,22 +1212,22 @@ box.execute("CREATE TABLE t (id INT PRIMARY KEY, v VARBINARY);") box.execute("INSERT INTO t VALUES(1, 1);") --- - null -- 'Type mismatch: can not convert 1 to varbinary' +- 'Type mismatch: can not convert ''1'' (type: unsigned) to varbinary' ... box.execute("INSERT INTO t VALUES(1, 1.123);") --- - null -- 'Type mismatch: can not convert 1.123 to varbinary' +- 'Type mismatch: can not convert ''1.123'' (type: real) to varbinary' ... box.execute("INSERT INTO t VALUES(1, true);") --- - null -- 'Type mismatch: can not convert TRUE to varbinary' +- 'Type mismatch: can not convert ''TRUE'' (type: boolean) to varbinary' ... box.execute("INSERT INTO t VALUES(1, 'asd');") --- - null -- 'Type mismatch: can not convert asd to varbinary' +- 'Type mismatch: can not convert ''asd'' (type: text) to varbinary' ... box.execute("INSERT INTO t VALUES(1, x'616263');") --- @@ -1236,17 +1236,17 @@ box.execute("INSERT INTO t VALUES(1, x'616263');") box.execute("SELECT * FROM t WHERE v = 1") --- - null -- 'Type mismatch: can not convert unsigned to varbinary' +- 'Type mismatch: can not convert varbinary to unsigned' ... box.execute("SELECT * FROM t WHERE v = 1.123") --- - null -- 'Type mismatch: can not convert real to varbinary' +- 'Type mismatch: can not convert varbinary to real' ... box.execute("SELECT * FROM t WHERE v = 'str'") --- - null -- 'Type mismatch: can not convert text to varbinary' +- 'Type mismatch: can not convert varbinary to text' ... box.execute("SELECT * FROM t WHERE v = x'616263'") --- @@ -1444,17 +1444,17 @@ box.space.T1:drop() box.execute("SELECT CAST(1 AS VARBINARY);") --- - null -- 'Type mismatch: can not convert 1 to varbinary' +- 'Type mismatch: can not convert ''1'' (type: unsigned) to varbinary' ... box.execute("SELECT CAST(1.123 AS VARBINARY);") --- - null -- 'Type mismatch: can not convert 1.123 to varbinary' +- 'Type mismatch: can not convert ''1.123'' (type: real) to varbinary' ... box.execute("SELECT CAST(true AS VARBINARY);") --- - null -- 'Type mismatch: can not convert TRUE to varbinary' +- 'Type mismatch: can not convert ''TRUE'' (type: boolean) to varbinary' ... box.execute("SELECT CAST('asd' AS VARBINARY);") --- @@ -1609,7 +1609,7 @@ s:insert({1, {1,2,3}}) box.execute('INSERT INTO t1(a) SELECT a FROM t2;') --- - null -- 'Type mismatch: can not convert [1, 2, 3] to scalar' +- 'Type mismatch: can not convert ''[1, 2, 3]'' (type: varbinary) to scalar' ... s:replace({1, {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}}) --- @@ -1619,8 +1619,8 @@ s:replace({1, {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 box.execute('INSERT INTO t1(a) SELECT a FROM t2;') --- - null -- 'Type mismatch: can not convert [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30] to scalar' +- 'Type mismatch: can not convert ''[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, ...'' (type: varbinary) to scalar' ... -- -- Make sure that the error will be displayed correctly even if @@ -1645,13 +1645,8 @@ s:replace({1, long_array}) box.execute('INSERT INTO t1(a) SELECT a FROM t2;') --- - null -- 'Type mismatch: can not convert [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 11' +- 'Type mismatch: can not convert ''[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, ...'' (type: varbinary) to scalar' ... s:drop() --- @@ -1672,7 +1667,7 @@ s:insert({1, {b = 1}}) box.execute('INSERT INTO t1(a) SELECT a FROM t2;') --- - null -- 'Type mismatch: can not convert {"b": 1} to scalar' +- 'Type mismatch: can not convert ''{"b": 1}'' (type: varbinary) to scalar' ... s:drop() --- @@ -1717,12 +1712,12 @@ box.execute("SELECT CAST(1.123 AS DOUBLE);") box.execute("SELECT CAST(true AS DOUBLE);") --- - null -- 'Type mismatch: can not convert TRUE to double' +- 'Type mismatch: can not convert ''TRUE'' (type: boolean) to double' ... box.execute("SELECT CAST('asd' AS DOUBLE);") --- - null -- 'Type mismatch: can not convert asd to double' +- 'Type mismatch: can not convert ''asd'' (type: text) to double' ... box.execute("SELECT CAST('1' AS DOUBLE);") --- -- 2.25.1
next prev parent reply other threads:[~2020-06-25 15:17 UTC|newest] Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-06-25 15:17 [Tarantool-patches] [PATCH v3 0/8] Remove implicit cast imeevma 2020-06-25 15:17 ` [Tarantool-patches] [PATCH v3 1/8] sql: introduce mem_set_double() imeevma 2020-06-28 13:31 ` Nikita Pettik 2020-07-06 14:02 ` Nikita Pettik 2020-06-25 15:17 ` [Tarantool-patches] [PATCH v3 2/8] sql: change implicit cast for assignment imeevma 2020-06-30 11:50 ` Nikita Pettik 2020-07-05 14:26 ` Mergen Imeev 2020-07-06 21:27 ` Nikita Pettik 2020-07-07 9:29 ` Mergen Imeev 2020-07-07 15:35 ` Nikita Pettik 2020-07-10 10:49 ` Nikita Pettik 2020-06-25 15:17 ` [Tarantool-patches] [PATCH v3 3/8] sql: remove mem_apply_type() from OP_MakeRecord imeevma 2020-06-25 15:17 ` [Tarantool-patches] [PATCH v3 4/8] sql: replace ApplyType by CheckType for IN operator imeevma 2020-06-29 12:56 ` Nikita Pettik 2020-07-05 14:28 ` Mergen Imeev 2020-07-06 22:06 ` Nikita Pettik 2020-07-07 11:26 ` Mergen Imeev 2020-07-07 16:29 ` Nikita Pettik 2020-06-25 15:17 ` [Tarantool-patches] [PATCH v3 5/8] sql: remove mem_apply_type() from OP_MustBeInt imeevma 2020-06-29 13:29 ` Nikita Pettik 2020-07-05 14:29 ` Mergen Imeev 2020-06-25 15:17 ` [Tarantool-patches] [PATCH v3 6/8] sql: remove implicit cast for comparison imeevma 2020-06-29 23:51 ` Nikita Pettik 2020-07-05 14:47 ` Mergen Imeev 2020-07-06 23:11 ` Nikita Pettik 2020-06-25 15:17 ` [Tarantool-patches] [PATCH v3 7/8] sql: remove unused functions imeevma 2020-06-29 23:52 ` Nikita Pettik 2020-07-05 14:50 ` Mergen Imeev 2020-06-25 15:17 ` imeevma [this message] 2020-06-30 0:22 ` [Tarantool-patches] [PATCH v3 8/8] sql: show value and its type in type mismatch error Nikita Pettik 2020-07-05 15:03 ` Mergen Imeev 2020-07-06 21:44 ` Nikita Pettik
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=7781d885cc6a0ea2a420984f88e2612115dbed81.1593096639.git.imeevma@gmail.com \ --to=imeevma@tarantool.org \ --cc=korablev@tarantool.org \ --cc=tarantool-patches@dev.tarantool.org \ --cc=tsafin@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH v3 8/8] sql: show value and its type in type mismatch error' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox