[Tarantool-patches] [PATCH v2 3/4] sql: use proper type names in error descriptions
Timur Safin
tsafin at tarantool.org
Tue Jul 13 11:51:39 MSK 2021
Yup, text and real were always confusing before.1
LGTM
: From: imeevma at tarantool.org <imeevma at tarantool.org>
: Subject: [PATCH v2 3/4] sql: use proper type names in error descriptions
:
: Prior to this patch, the type mismatch error description and the
: inconsistent types error description in some cases displayed type names
: that were different from the default ones. After this patch, all types
: in these descriptions are described using the default names.
:
: Part of #6176
: ---
: src/box/sql/func.c | 12 +-
: src/box/sql/mem.c | 14 +-
: src/box/sql/vdbe.c | 2 +-
: test/sql-tap/func.test.lua | 6 +-
: test/sql-tap/index1.test.lua | 4 +-
: test/sql-tap/position.test.lua | 16 +-
: test/sql-tap/select1.test.lua | 2 +-
: test/sql-tap/sql-errors.test.lua | 8 +-
: test/sql-tap/uuid.test.lua | 28 +-
: test/sql/boolean.result | 716 +++++++++++++++----------------
: test/sql/types.result | 34 +-
: 11 files changed, 422 insertions(+), 420 deletions(-)
:
: diff --git a/src/box/sql/func.c b/src/box/sql/func.c
: index f93ae867d..e4832f46d 100644
: --- a/src/box/sql/func.c
: +++ b/src/box/sql/func.c
: @@ -324,7 +324,7 @@ position_func(struct sql_context *context, int argc,
: struct Mem **argv)
: inconsistent_type_arg = haystack;
: if (inconsistent_type_arg != NULL) {
: diag_set(ClientError, ER_INCONSISTENT_TYPES,
: - "text or varbinary",
: + "string or varbinary",
: mem_type_to_str(inconsistent_type_arg));
: context->is_aborted = true;
: return;
: @@ -590,7 +590,7 @@ roundFunc(sql_context * context, int argc, sql_value **
: argv)
: return;
: if (!mem_is_num(argv[0]) && !mem_is_str(argv[0])) {
: diag_set(ClientError, ER_SQL_TYPE_MISMATCH,
: - mem_str(argv[0]), "numeric");
: + mem_str(argv[0]), "number");
: context->is_aborted = true;
: return;
: }
: @@ -650,7 +650,7 @@ case_type##ICUFunc(sql_context *context, int argc,
: sql_value **argv) \
: UNUSED_PARAMETER(argc);
: \
: if (mem_is_bin(argv[0]) || mem_is_map(argv[0]) ||
: \
: mem_is_array(argv[0])) {
: \
: - diag_set(ClientError, ER_INCONSISTENT_TYPES, "text", \
: + diag_set(ClientError, ER_INCONSISTENT_TYPES, "string", \
: "varbinary"); \
: context->is_aborted = true; \
: return; \
: @@ -733,7 +733,7 @@ randomBlob(sql_context * context, int argc, sql_value **
: argv)
: if (mem_is_bin(argv[0]) || mem_is_map(argv[0]) ||
: mem_is_array(argv[0])) {
: diag_set(ClientError, ER_SQL_TYPE_MISMATCH,
: - mem_str(argv[0]), "numeric");
: + mem_str(argv[0]), "number");
: context->is_aborted = true;
: return;
: }
: @@ -987,7 +987,7 @@ likeFunc(sql_context *context, int argc, sql_value
: **argv)
: char *inconsistent_type = rhs_type != MP_STR ?
: mem_type_to_str(argv[0]) :
: mem_type_to_str(argv[1]);
: - diag_set(ClientError, ER_INCONSISTENT_TYPES, "text",
: + diag_set(ClientError, ER_INCONSISTENT_TYPES, "string",
: inconsistent_type);
: context->is_aborted = true;
: return;
: @@ -1624,7 +1624,7 @@ soundexFunc(sql_context * context, int argc, sql_value
: ** argv)
: if (mem_is_bin(argv[0]) || mem_is_map(argv[0]) ||
: mem_is_array(argv[0])) {
: diag_set(ClientError, ER_SQL_TYPE_MISMATCH,
: - mem_str(argv[0]), "text");
: + mem_str(argv[0]), "string");
: context->is_aborted = true;
: return;
: }
: diff --git a/src/box/sql/mem.c b/src/box/sql/mem.c
: index 3bbff9897..c4375e1ea 100644
: --- a/src/box/sql/mem.c
: +++ b/src/box/sql/mem.c
: @@ -1450,12 +1450,12 @@ mem_concat(struct Mem *a, struct Mem *b, struct Mem
: *result)
: /* Concatenation operation can be applied only to strings and blobs.
: */
: if (((b->type & (MEM_TYPE_STR | MEM_TYPE_BIN)) == 0)) {
: diag_set(ClientError, ER_INCONSISTENT_TYPES,
: - "text or varbinary", mem_type_to_str(b));
: + "string or varbinary", mem_type_to_str(b));
: return -1;
: }
: if (((a->type & (MEM_TYPE_STR | MEM_TYPE_BIN)) == 0)) {
: diag_set(ClientError, ER_INCONSISTENT_TYPES,
: - "text or varbinary", mem_type_to_str(a));
: + "string or varbinary", mem_type_to_str(a));
: return -1;
: }
:
: @@ -1544,12 +1544,12 @@ arithmetic_prepare(const struct Mem *left, const
: struct Mem *right,
: {
: if (get_number(right, b) != 0) {
: diag_set(ClientError, ER_SQL_TYPE_MISMATCH, mem_str(right),
: - "numeric");
: + "number");
: return -1;
: }
: if (get_number(left, a) != 0) {
: diag_set(ClientError, ER_SQL_TYPE_MISMATCH, mem_str(left),
: - "numeric");
: + "number");
: return -1;
: }
: assert(a->type != 0 && b->type != 0);
: @@ -2065,15 +2065,17 @@ mem_type_to_str(const struct Mem *p)
: case MEM_TYPE_NULL:
: return "NULL";
: case MEM_TYPE_STR:
: - return "text";
: + return "string";
: case MEM_TYPE_INT:
: return "integer";
: case MEM_TYPE_UINT:
: return "unsigned";
: case MEM_TYPE_DOUBLE:
: - return "real";
: + return "double";
: case MEM_TYPE_ARRAY:
: + return "array";
: case MEM_TYPE_MAP:
: + return "map";
: case MEM_TYPE_BIN:
: return "varbinary";
: case MEM_TYPE_BOOL:
: diff --git a/src/box/sql/vdbe.c b/src/box/sql/vdbe.c
: index 32d02d96e..03f420bca 100644
: --- a/src/box/sql/vdbe.c
: +++ b/src/box/sql/vdbe.c
: @@ -1674,7 +1674,7 @@ case OP_Ge: { /* same as TK_GE, jump, in1,
: in3 */
: mem_cast_implicit_old(pIn3, type) != 0 ?
: mem_str(pIn3) : mem_str(pIn1);
: diag_set(ClientError, ER_SQL_TYPE_MISMATCH, str,
: - "numeric");
: + "number");
: goto abort_due_to_error;
: }
: } else {
: diff --git a/test/sql-tap/func.test.lua b/test/sql-tap/func.test.lua
: index ae6bc9ddd..66e525871 100755
: --- a/test/sql-tap/func.test.lua
: +++ b/test/sql-tap/func.test.lua
: @@ -2931,7 +2931,7 @@ test:do_catchsql_test(
: SELECT ROUND(X'FF')
: ]], {
: -- <func-76.1>
: - 1, "Type mismatch: can not convert x'FF' to numeric"
: + 1, "Type mismatch: can not convert x'FF' to number"
: -- </func-76.1>
: })
:
: @@ -2941,7 +2941,7 @@ test:do_catchsql_test(
: SELECT RANDOMBLOB(X'FF')
: ]], {
: -- <func-76.2>
: - 1, "Type mismatch: can not convert x'FF' to numeric"
: + 1, "Type mismatch: can not convert x'FF' to number"
: -- </func-76.2>
: })
:
: @@ -2951,7 +2951,7 @@ test:do_catchsql_test(
: SELECT SOUNDEX(X'FF')
: ]], {
: -- <func-76.3>
: - 1, "Type mismatch: can not convert x'FF' to text"
: + 1, "Type mismatch: can not convert x'FF' to string"
: -- </func-76.3>
: })
:
: diff --git a/test/sql-tap/index1.test.lua b/test/sql-tap/index1.test.lua
: index e03e284aa..9e57639cc 100755
: --- a/test/sql-tap/index1.test.lua
: +++ b/test/sql-tap/index1.test.lua
: @@ -778,7 +778,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 '' to number"
: -- </index-14.6>
: })
:
: @@ -788,7 +788,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 '' to number"
: -- </index-14.7>
: })
:
: diff --git a/test/sql-tap/position.test.lua b/test/sql-tap/position.test.lua
: index 506efe0f4..dd4fa62d0 100755
: --- a/test/sql-tap/position.test.lua
: +++ b/test/sql-tap/position.test.lua
: @@ -228,7 +228,7 @@ test:do_test(
: return test:catchsql "SELECT position(34, 12345);"
: end, {
: -- <position-1.23>
: - 1, "Inconsistent types: expected text or varbinary got unsigned"
: + 1, "Inconsistent types: expected string or varbinary got unsigned"
: -- </position-1.23>
: })
:
: @@ -238,7 +238,7 @@ test:do_test(
: return test:catchsql "SELECT position(34, 123456.78);"
: end, {
: -- <position-1.24>
: - 1, "Inconsistent types: expected text or varbinary got real"
: + 1, "Inconsistent types: expected string or varbinary got double"
: -- </position-1.24>
: })
:
: @@ -248,7 +248,7 @@ test:do_test(
: return test:catchsql "SELECT position(x'3334', 123456.78);"
: end, {
: -- <position-1.25>
: - 1, "Inconsistent types: expected text or varbinary got real"
: + 1, "Inconsistent types: expected string or varbinary got double"
: -- </position-1.25>
: })
:
: @@ -554,7 +554,7 @@ test:do_test(
: return test:catchsql("SELECT position('x', x'78c3a4e282ac79');")
: end, {
: -- <position-1.54>
: - 1, "Inconsistent types: expected text got varbinary"
: + 1, "Inconsistent types: expected string got varbinary"
: -- </position-1.54>
: })
:
: @@ -564,7 +564,7 @@ test:do_test(
: return test:catchsql "SELECT position('y', x'78c3a4e282ac79');"
: end, {
: -- <position-1.55>
: - 1, "Inconsistent types: expected text got varbinary"
: + 1, "Inconsistent types: expected string got varbinary"
: -- </position-1.55>
: })
:
: @@ -614,7 +614,7 @@ test:do_test(
: return test:catchsql "SELECT position(x'79', 'xä€y');"
: end, {
: -- <position-1.57.1>
: - 1, "Inconsistent types: expected varbinary got text"
: + 1, "Inconsistent types: expected varbinary got string"
: -- </position-1.57.1>
: })
:
: @@ -624,7 +624,7 @@ test:do_test(
: return test:catchsql "SELECT position(x'a4', 'xä€y');"
: end, {
: -- <position-1.57.2>
: - 1, "Inconsistent types: expected varbinary got text"
: + 1, "Inconsistent types: expected varbinary got string"
: -- </position-1.57.2>
: })
:
: @@ -634,7 +634,7 @@ test:do_test(
: return test:catchsql "SELECT position('y', x'78c3a4e282ac79');"
: end, {
: -- <position-1.57.3>
: - 1, "Inconsistent types: expected text got varbinary"
: + 1, "Inconsistent types: expected string got varbinary"
: -- </position-1.57.3>
: })
:
: diff --git a/test/sql-tap/select1.test.lua b/test/sql-tap/select1.test.lua
: index 1a7a4ee82..57c5c2cb3 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' to number"
: -- </select1-2.5.3>
: })
:
: diff --git a/test/sql-tap/sql-errors.test.lua b/test/sql-tap/sql-
: errors.test.lua
: index 52276c27b..66dc77fa1 100755
: --- a/test/sql-tap/sql-errors.test.lua
: +++ b/test/sql-tap/sql-errors.test.lua
: @@ -696,7 +696,7 @@ test:do_catchsql_test(
: SELECT X'ff' + 1;
: ]], {
: -- <sql-errors-2.1>
: - 1, "Type mismatch: can not convert x'FF' to numeric"
: + 1, "Type mismatch: can not convert x'FF' to number"
: -- </sql-errors-2.1>
: })
:
: @@ -706,7 +706,7 @@ test:do_catchsql_test(
: SELECT X'ff' - 1;
: ]], {
: -- <sql-errors-2.2>
: - 1, "Type mismatch: can not convert x'FF' to numeric"
: + 1, "Type mismatch: can not convert x'FF' to number"
: -- </sql-errors-2.2>
: })
:
: @@ -716,7 +716,7 @@ test:do_catchsql_test(
: SELECT X'ff' * 1;
: ]], {
: -- <sql-errors-2.3>
: - 1, "Type mismatch: can not convert x'FF' to numeric"
: + 1, "Type mismatch: can not convert x'FF' to number"
: -- </sql-errors-2.3>
: })
:
: @@ -726,7 +726,7 @@ test:do_catchsql_test(
: SELECT X'ff' / 1;
: ]], {
: -- <sql-errors-2.4>
: - 1, "Type mismatch: can not convert x'FF' to numeric"
: + 1, "Type mismatch: can not convert x'FF' to number"
: -- </sql-errors-2.4>
: })
:
: diff --git a/test/sql-tap/uuid.test.lua b/test/sql-tap/uuid.test.lua
: index 1fc99916a..c9e1b4fcc 100755
: --- a/test/sql-tap/uuid.test.lua
: +++ b/test/sql-tap/uuid.test.lua
: @@ -337,7 +337,7 @@ test:do_catchsql_test(
: [[
: SELECT u LIKE 'a' from t2;
: ]], {
: - 1, "Inconsistent types: expected text got uuid"
: + 1, "Inconsistent types: expected string got uuid"
: })
:
: test:do_execsql_test(
: @@ -395,7 +395,7 @@ test:do_catchsql_test(
: [[
: SELECT POSITION(u, '1') from t2;
: ]], {
: - 1, "Inconsistent types: expected text or varbinary got uuid"
: + 1, "Inconsistent types: expected string or varbinary got uuid"
: })
:
: test:do_execsql_test(
: @@ -421,7 +421,7 @@ test:do_catchsql_test(
: [[
: SELECT ROUND(u) from t2;
: ]], {
: - 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to numeric"
: + 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to number"
: })
:
: test:do_execsql_test(
: @@ -505,7 +505,7 @@ test:do_catchsql_test(
: [[
: SELECT u || u from t2;
: ]], {
: - 1, "Inconsistent types: expected text or varbinary got uuid"
: + 1, "Inconsistent types: expected string or varbinary got uuid"
: })
:
: local func = {language = 'Lua', body = 'function(x) return type(x) end',
: @@ -971,7 +971,7 @@ test:do_catchsql_test(
: [[
: SELECT -u FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to numeric"
: + 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to number"
: })
:
: test:do_catchsql_test(
: @@ -979,7 +979,7 @@ test:do_catchsql_test(
: [[
: SELECT u + 1 FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to numeric"
: + 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to number"
: })
:
: test:do_catchsql_test(
: @@ -987,7 +987,7 @@ test:do_catchsql_test(
: [[
: SELECT u - 1 FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to numeric"
: + 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to number"
: })
:
: test:do_catchsql_test(
: @@ -995,7 +995,7 @@ test:do_catchsql_test(
: [[
: SELECT u * 1 FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to numeric"
: + 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to number"
: })
:
: test:do_catchsql_test(
: @@ -1003,7 +1003,7 @@ test:do_catchsql_test(
: [[
: SELECT u / 1 FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to numeric"
: + 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to number"
: })
:
: test:do_catchsql_test(
: @@ -1011,7 +1011,7 @@ test:do_catchsql_test(
: [[
: SELECT u % 1 FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to numeric"
: + 1, "Type mismatch: can not convert '11111111-1111-1111-1111-
: 111111111111' to number"
: })
:
: -- Check that bitwise operations work with UUIDs as intended.
: @@ -1118,7 +1118,7 @@ test:do_catchsql_test(
: [[
: SELECT u > '1' FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert text to uuid"
: + 1, "Type mismatch: can not convert string to uuid"
: })
:
: test:do_catchsql_test(
: @@ -1126,7 +1126,7 @@ test:do_catchsql_test(
: [[
: SELECT u > 1.5 FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert real to uuid"
: + 1, "Type mismatch: can not convert double to uuid"
: })
:
: test:do_catchsql_test(
: @@ -1182,7 +1182,7 @@ test:do_catchsql_test(
: [[
: SELECT u = '1' FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert text to uuid"
: + 1, "Type mismatch: can not convert string to uuid"
: })
:
: test:do_catchsql_test(
: @@ -1190,7 +1190,7 @@ test:do_catchsql_test(
: [[
: SELECT u = 1.5 FROM t2;
: ]], {
: - 1, "Type mismatch: can not convert real to uuid"
: + 1, "Type mismatch: can not convert double to uuid"
: })
:
: test:do_catchsql_test(
: diff --git a/test/sql/boolean.result b/test/sql/boolean.result
: index dbd31fbb5..320525d36 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 string to boolean'
: | ...
: SELECT s FROM ts WHERE s < true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT s FROM ts WHERE s IN (true, 1, 'abcd');
: | ---
: @@ -1122,245 +1122,245 @@ 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 to number'
: | ...
: SELECT -false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT -a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT true + true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT true + false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT false + true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false + false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true - true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT true - false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT false - true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false - false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true * true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT true * false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT false * true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false * false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true / true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT true / false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT false / true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false / false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true % true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT true % false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT false % true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false % false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT a, true + a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, false + a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, true - a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, false - a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, true * a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, false * a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, true / a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, false / a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, true % a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, false % a FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a + true FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a, a + false FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a - true FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a, a - false FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a * true FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a, a * false FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a / true FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a, a / false FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a % true FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a, a % false FROM t;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT a, a1, a + a1 FROM t, t6;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a1, a - a1 FROM t, t6;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a1, a * a1 FROM t, t6;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a1, a / a1 FROM t, t6;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a, a1, a % a1 FROM t, t6;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT ~true;
: @@ -1560,64 +1560,64 @@ SELECT a, a1, a >> a1 FROM t, t6;
: SELECT true || true;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT true || false;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT false || true;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT false || false;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
:
: SELECT a, true || a FROM t;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT a, false || a FROM t;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT a, a || true FROM t;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT a, a || false FROM t;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
:
: SELECT a1, a1 || a1 FROM t6;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT a2, a2 || a2 FROM t6;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT a1, a2, a1 || a1 FROM t6;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT a1, a2, a2 || a2 FROM t6;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
:
: -- Check comparisons.
: @@ -2643,405 +2643,405 @@ SELECT a2, b, b OR a2 FROM t6, t7;
: SELECT true + 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false + 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true - 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false - 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true * 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false * 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true / 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false / 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true % 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false % 2;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2 + true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2 + false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2 - true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2 - false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2 * true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2 * false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2 / true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2 / false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2 % true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2 % false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT a1, a1 + 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 - 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 * 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 / 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 % 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2 + a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2 - a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2 * a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2 / a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2 % a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a2, a2 + 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 - 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 * 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 / 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 % 2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2 + a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2 - a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2 * a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2 / a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2 % a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
:
: SELECT b, true + b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, false + b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, true - b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, false - b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, true * b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, false * b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, true / b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, false / b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, true % b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, false % b FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, b + true FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, b + false FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, b - true FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, b - false FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, b * true FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, b * false FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, b / true FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, b / false FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT b, b % true FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT b, b % false FROM t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT a1, b, a1 + b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, a1 - b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, a1 * b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, a1 / b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, a1 % b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, b + a1 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, b - a1 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, b * a1 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, b / a1 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, b, b % a1 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a2, b, a2 + b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, a2 - b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, a2 * b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, a2 / b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, a2 % b FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, b + a2 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, b - a2 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, b * a2 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, b / a2 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, b, b % a2 FROM t6, t7;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
:
: SELECT true & 2;
: @@ -4112,897 +4112,897 @@ SELECT a2, c, c OR a2 FROM t6, t8;
: SELECT true + 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false + 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true - 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false - 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true * 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false * 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true / 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false / 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT true % 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT false % 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2.3 + true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2.3 + false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2.3 - true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2.3 - false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2.3 * true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2.3 * false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2.3 / true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2.3 / false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT 2.3 % true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT 2.3 % false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT a1, a1 + 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 - 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 * 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 / 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, a1 % 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2.3 + a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2.3 - a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2.3 * a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2.3 / a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, 2.3 % a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a2, a2 + 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 - 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 * 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 / 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, a2 % 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2.3 + a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2.3 - a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2.3 * a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2.3 / a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, 2.3 % a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
:
: SELECT c, true + c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, false + c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, true - c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, false - c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, true * c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, false * c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, true / c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, false / c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, true % c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, false % c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, c + true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, c + false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, c - true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, c - false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, c * true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, c * false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, c / true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, c / false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT c, c % true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT c, c % false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
:
: SELECT a1, c, a1 + c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, a1 - c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, a1 * c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, a1 / c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, a1 % c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, c + a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, c - a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, c * a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, c / a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a1, c, c % a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert FALSE to numeric'
: + | - 'Type mismatch: can not convert FALSE to number'
: | ...
: SELECT a2, c, a2 + c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, a2 - c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, a2 * c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, a2 / c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, a2 % c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, c + a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, c - a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, c * a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, c / a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
: SELECT a2, c, c % a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert TRUE to numeric'
: + | - 'Type mismatch: can not convert TRUE to number'
: | ...
:
: SELECT true > 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT false > 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT true < 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT false < 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 > true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 > false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 < true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 < false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT a1, a1 > 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, a1 < 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, 2.3 > a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, 2.3 < a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, a2 > 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, a2 < 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, 2.3 > a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, 2.3 < a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT c, true > c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, false > c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, true < c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, false < c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c > true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c > false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c < true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c < false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT a1, c, a1 > c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, a1 < c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, c > a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, c < a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, a2 > c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, a2 < c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, c > a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, c < a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT true >= 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT false >= 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT true <= 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT false <= 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 >= true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 >= false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 <= true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 <= false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT a1, a1 >= 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, a1 <= 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, 2.3 >= a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, 2.3 <= a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, a2 >= 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, a2 <= 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, 2.3 >= a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, 2.3 <= a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT c, true >= c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, false >= c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, true <= c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, false <= c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c >= true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c >= false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c <= true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c <= false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT a1, c, a1 >= c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, a1 <= c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, c >= a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, c <= a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, a2 >= c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, a2 <= c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, c >= a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, c <= a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT true == 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT false == 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT true != 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT false != 2.3;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 == true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 == false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 != true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT 2.3 != false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT a1, a1 == 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, a1 != 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, 2.3 == a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, 2.3 != a1 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, a2 == 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, a2 != 2.3 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, 2.3 == a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, 2.3 != a2 FROM t6
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT c, true == c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, false == c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, true != c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, false != c FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c == true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c == false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c != true FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT c, c != false FROM t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT a1, c, a1 == c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, a1 != c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, c == a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a1, c, c != a1 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, a2 == c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, a2 != c FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, c == a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT a2, c, c != a2 FROM t6, t8;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
:
: SELECT true IN (0.1, 1.2, 2.3, 3.4);
: @@ -5061,22 +5061,22 @@ SELECT a2 IN (SELECT c FROM t8) FROM t6 LIMIT 1;
: SELECT true BETWEEN 0.1 and 9.9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: SELECT false BETWEEN 0.1 and 9.9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert real to boolean'
: + | - 'Type mismatch: can not convert double to boolean'
: | ...
: 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 double to boolean'
: | ...
: 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 double to boolean'
: | ...
:
: -- Check interaction of BOOLEAN and TEXT.
: @@ -5272,187 +5272,187 @@ SELECT a2, d, d OR a2 FROM t6, t9;
: SELECT true > 'abc';
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT false > 'abc';
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT true < 'abc';
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT false < 'abc';
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT 'abc' > true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT 'abc' > false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT 'abc' < true;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT 'abc' < false;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
:
: SELECT d, true > d FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT d, false > d FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT d, true < d FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT d, false < d FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT d, d > true FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT d, d > false FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT d, d < true FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT d, d < false FROM t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
:
: SELECT a1, d, a1 > d FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT a1, d, a1 < d FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT a1, d, d > a1 FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT a1, d, d < a1 FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT a2, d, a2 > d FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT a2, d, a2 < d FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT a2, d, d > a2 FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
: SELECT a2, d, d < a2 FROM t6, t9;
: | ---
: | - null
: - | - 'Type mismatch: can not convert text to boolean'
: + | - 'Type mismatch: can not convert string to boolean'
: | ...
:
: SELECT true || 'abc';
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT false || 'abc';
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT 'abc' || false;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT 'abc' || true;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
:
: SELECT d, true || d FROM t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT d, false || d FROM t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT d, d || false FROM t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT d, d || true FROM t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
:
: SELECT d, a1 || d FROM t6, t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT d, a2 || d FROM t6, t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT d, d || a1 FROM t6, t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
: SELECT d, d || a2 FROM t6, t9;
: | ---
: | - null
: - | - 'Inconsistent types: expected text or varbinary got boolean'
: + | - 'Inconsistent types: expected string or varbinary got boolean'
: | ...
:
: --
: diff --git a/test/sql/types.result b/test/sql/types.result
: index 219559619..a9a5fd536 100644
: --- a/test/sql/types.result
: +++ b/test/sql/types.result
: @@ -158,39 +158,39 @@ sp:drop()
: box.execute("SELECT 'abc' || 1;")
: ---
: - null
: -- 'Inconsistent types: expected text or varbinary got unsigned'
: +- 'Inconsistent types: expected string or varbinary got unsigned'
: ...
: box.execute("SELECT 'abc' || 1.123;")
: ---
: - null
: -- 'Inconsistent types: expected text or varbinary got real'
: +- 'Inconsistent types: expected string or varbinary got double'
: ...
: box.execute("SELECT 1 || 'abc';")
: ---
: - null
: -- 'Inconsistent types: expected text or varbinary got unsigned'
: +- 'Inconsistent types: expected string or varbinary got unsigned'
: ...
: box.execute("SELECT 1.123 || 'abc';")
: ---
: - null
: -- 'Inconsistent types: expected text or varbinary got real'
: +- 'Inconsistent types: expected string or varbinary got double'
: ...
: box.execute("SELECt 'a' || 'b' || 1;")
: ---
: - null
: -- 'Inconsistent types: expected text or varbinary got unsigned'
: +- 'Inconsistent types: expected string or varbinary got unsigned'
: ...
: -- What is more, they must be of the same type.
: --
: box.execute("SELECT 'abc' || randomblob(5);")
: ---
: - null
: -- 'Inconsistent types: expected text got varbinary'
: +- 'Inconsistent types: expected string got varbinary'
: ...
: box.execute("SELECT randomblob(5) || 'x';")
: ---
: - null
: -- 'Inconsistent types: expected varbinary got text'
: +- 'Inconsistent types: expected varbinary got string'
: ...
: -- Result of BLOBs concatenation must be BLOB.
: --
: @@ -215,17 +215,17 @@ box.execute("INSERT INTO t1 VALUES (randomblob(5));")
: box.execute("SELECT * FROM t1 WHERE s LIKE 'blob';")
: ---
: - null
: -- 'Inconsistent types: expected text got varbinary'
: +- 'Inconsistent types: expected string got varbinary'
: ...
: box.execute("SELECT * FROM t1 WHERE 'blob' LIKE s;")
: ---
: - null
: -- 'Inconsistent types: expected text got varbinary'
: +- 'Inconsistent types: expected string got varbinary'
: ...
: box.execute("SELECT * FROM t1 WHERE 'blob' LIKE x'0000';")
: ---
: - null
: -- 'Inconsistent types: expected text got varbinary'
: +- 'Inconsistent types: expected string got varbinary'
: ...
: box.execute("SELECT s LIKE NULL FROM t1;")
: ---
: @@ -246,12 +246,12 @@ box.execute("INSERT INTO t1 VALUES (1);")
: box.execute("SELECT * FROM t1 WHERE s LIKE 'int';")
: ---
: - null
: -- 'Inconsistent types: expected text got unsigned'
: +- 'Inconsistent types: expected string got unsigned'
: ...
: box.execute("SELECT * FROM t1 WHERE 'int' LIKE 4;")
: ---
: - null
: -- 'Inconsistent types: expected text got unsigned'
: +- 'Inconsistent types: expected string got unsigned'
: ...
: box.execute("SELECT NULL LIKE s FROM t1;")
: ---
: @@ -354,7 +354,7 @@ box.execute("SELECT * FROM tboolean WHERE s1 = 1;")
: box.execute("SELECT * FROM tboolean WHERE s1 = 1.123;")
: ---
: - null
: -- 'Type mismatch: can not convert real to boolean'
: +- 'Type mismatch: can not convert double to boolean'
: ...
: box.space.TBOOLEAN:drop()
: ---
: @@ -1245,12 +1245,12 @@ box.execute("SELECT * FROM t WHERE v = 1")
: box.execute("SELECT * FROM t WHERE v = 1.123")
: ---
: - null
: -- 'Type mismatch: can not convert real to varbinary'
: +- 'Type mismatch: can not convert double to varbinary'
: ...
: box.execute("SELECT * FROM t WHERE v = 'str'")
: ---
: - null
: -- 'Type mismatch: can not convert text to varbinary'
: +- 'Type mismatch: can not convert string to varbinary'
: ...
: box.execute("SELECT * FROM t WHERE v = x'616263'")
: ---
: @@ -1312,12 +1312,12 @@ box.execute("SELECT group_concat(v) FROM t;")
: box.execute("SELECT lower(v) FROM t;")
: ---
: - null
: -- 'Inconsistent types: expected text got varbinary'
: +- 'Inconsistent types: expected string got varbinary'
: ...
: box.execute("SELECT upper(v) FROM t;")
: ---
: - null
: -- 'Inconsistent types: expected text got varbinary'
: +- 'Inconsistent types: expected string got varbinary'
: ...
: box.execute("SELECT abs(v) FROM t;")
: ---
: --
: 2.25.1
More information about the Tarantool-patches
mailing list