<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><tt>Hello. Thanks for the review.</tt><br>
    </p>
    <div class="moz-cite-prefix">On 16.06.2020 00:59, Vladislav
      Shpilevoy wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:e9ec1678-a48a-fe61-8ed0-bfb34f938df1@tarantool.org">
      <pre class="moz-quote-pre" wrap="">Hi! Thanks for the patch!

See 4 comments below.

On 11/06/2020 17:18, Roman Khabibov wrote:

</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">sql: use unify pattern for column names
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
1. 'Unify' is a verb. You don't need 'use' before it.</pre>
    </blockquote>
    <tt>Done.</tt><br>
    <blockquote type="cite"
      cite="mid:e9ec1678-a48a-fe61-8ed0-bfb34f938df1@tarantool.org">
      <pre class="moz-quote-pre" wrap="">
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Name resulting columns generated by an expression or <VALUES>
construction by the "COLUMN_N" pattern.

Closes #3962

@TarantoolBot document
Title: Column naming in SQL

Now, every auto generated column is named by the "COLUMN_N"
pattern, where N is the number of column in a query (starting)
from 1). Auto generated column is a column in a query result
generated by an expression or a column from <VALUES>
construction.

Examples:
box.execute("VALUES(1, 2, 3);")
---
- metadata:
  - name: COLUMN_1
    type: integer
  - name: COLUMN_2
    type: integer
  - name: COLUMN_3
    type: integer
  rows:
  - [1, 2, 3]
...
box.execute("SELECT * FROM (VALUES (1+1, 1+1));")
---
- metadata:
  - name: COLUMN_1
    type: integer
  - name: COLUMN_2
    type: integer
  rows:
  - [2, 2]
...
box.execute("SELECT 1+1, 1+1;")
---
- metadata:
  - name: COLUMN_1
    type: integer
  - name: COLUMN_2
    type: integer
  rows:
  - [2, 2]
...
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
2. Please, wrap code into ``` to make the github markdown
more readable.</pre>
    </blockquote>
    <tt>Done.</tt><br>
    <blockquote type="cite"
      cite="mid:e9ec1678-a48a-fe61-8ed0-bfb34f938df1@tarantool.org">
      <pre class="moz-quote-pre" wrap="">
3. What if I specify first column by myself, and the second
is an expression? Will it be _1 or _2?
</pre>
    </blockquote>
    <pre>tarantool>         CREATE TABLE j (column_1 SCALAR PRIMARY KEY);
---
- row_count: 1
...

tarantool>         INSERT INTO j VALUES(1);
---
- row_count: 1
...

tarantool> SELECT column_1, column_1 COLLATE "unicode_ci" FROM j ORDER BY column_1;
---
- metadata:
  - name: COLUMN_1
    type: scalar
  - name: COLUMN_1
    type: scalar
  rows:
  - [1, 1]
...

If we want that the second expression to be named "COLUMN_2". should we use a
hash table in struct Parse. We will push the names of all columns in the request
to it and generate names without collisions. I don't now anymore ways.
I would leave it as it is now.
</pre>
    <blockquote type="cite"
      cite="mid:e9ec1678-a48a-fe61-8ed0-bfb34f938df1@tarantool.org">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">@@ -4951,6 +4951,18 @@ selectExpander(Walker * pWalker, Select * p)
                       || (pE->pLeft != 0 && pE->pLeft->op == TK_ID));
                if (pE->op == TK_DOT && pE->pRight->op == TK_ASTERISK)
                        break;
+               /*
+                * It is necessary to generate auto names for
+                * expressions before clauses such as ORDER BY,
+                * GROUP BY will be resolved. These names can be
+                * found inside these clauses during resolving.
+                */
+               if (pEList->a[k].zName == NULL && pE->op != TK_DOT &&
+                   ((pE->flags & EP_Leaf) == 0 || pE->op != TK_ID)) {
+                       uint32_t idx = ++pParse->autoname_i;
+                       pEList->a[k].zName =
+                               sqlDbStrDup(db, sql_generate_column_name(idx));
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
4. I don't think I understand what is happening here. Looks too
complicated. Why do you need so many checks, what do these checks
mean, how are they related to ORDER BY/GROUP BY? And how is it
related to select expansion (the function is called selectExpander())?
Why does it work fine when I use normal column names in ORDER BY/GROUP BY,
and does not work here without this crutch?</pre>
    </blockquote>
    <tt>Here I name all items (generate names) in expression list if it
      is needed.</tt><br>
    <tt>I think this operation can be attributed to "expanding".
      Expanding is before</tt><br>
    <tt>name resolving. At the resolving all items must be named.</tt><br>
    <tt></tt><br>
    <tt>You can use normal column names in ORDER BY, GROUP BY etc, I
      checked it in Postgre</tt><br>
    <tt>(Postgre names expression the same way). I think it is OK.</tt><br>
    <br>
    <tt>+/**</tt><br>
    <tt>+ * Determine whether to generate a name for @a expr or not.</tt><br>
    <tt>+ *</tt><br>
    <tt>+ * Auto generated names is needed for every item in  a
      <SELECT></tt><br>
    <tt>+ * expression list except asterisks, dots and column names
      (also</tt><br>
    <tt>+ * if this item hasn't alias).</tt><br>
    <tt>+ *</tt><br>
    <tt>+ * @param expr Expression from expression list to analyze.</tt><br>
    <tt>+ *</tt><br>
    <tt>+ * @retval true/false If item is/isn't needed needed to name.</tt><br>
    <tt>+ */</tt><br>
    <tt>+static bool</tt><br>
    <tt>+is_needed_to_name(struct Expr *expr) {</tt><br>
    <tt>+    if (expr->op != TK_ASTERISK && expr->op !=
      TK_DOT &&</tt><br>
    <tt>+        ((expr->flags & EP_Leaf) == 0 || expr->op !=
      TK_ID))</tt><br>
    <tt>+        return true;</tt><br>
    <tt>+    return false;</tt><br>
    <tt>+}</tt><br>
    <tt>+</tt><br>
    <tt> /*</tt><br>
    <tt>  * This routine is a Walker callback for "expanding" a SELECT
      statement.</tt><br>
    <tt>  * "Expanding" means to do the following:</tt><br>
    <tt>@@ -4941,19 +4960,27 @@ selectExpander(Walker * pWalker, Select
      * p)</tt><br>
    <tt>      * all tables.</tt><br>
    <tt>      *</tt><br>
    <tt>      * The first loop just checks to see if there are any "*"
      operators</tt><br>
    <tt>-     * that need expanding.</tt><br>
    <tt>+     * that need expanding and name items of the expression</tt><br>
    <tt>+     * list if needed.</tt><br>
    <tt>      */</tt><br>
    <tt>+    i = pEList->nExpr;</tt><br>
    <tt>     for (k = 0; k < pEList->nExpr; k++) {</tt><br>
    <tt>         pE = pEList->a[k].pExpr;</tt><br>
    <tt>-        if (pE->op == TK_ASTERISK)</tt><br>
    <tt>-            break;</tt><br>
    <tt>+        if (pE->op == TK_ASTERISK && i ==
      pEList->nExpr)</tt><br>
    <tt>+            i = k;</tt><br>
    <tt>         assert(pE->op != TK_DOT || pE->pRight != 0);</tt><br>
    <tt>         assert(pE->op != TK_DOT</tt><br>
    <tt>                || (pE->pLeft != 0 &&
      pE->pLeft->op == TK_ID));</tt><br>
    <tt>-        if (pE->op == TK_DOT && pE->pRight->op
      == TK_ASTERISK)</tt><br>
    <tt>-            break;</tt><br>
    <tt>+        if (pE->op == TK_DOT && pE->pRight->op
      == TK_ASTERISK  &&</tt><br>
    <tt>+            i == pEList->nExpr)</tt><br>
    <tt>+            i = k;</tt><br>
    <tt>+        if (pEList->a[k].zName == NULL &&
      is_needed_to_name(pE)) {</tt><br>
    <tt>+            uint32_t idx = ++pParse->autoname_i;</tt><br>
    <tt>+            pEList->a[k].zName =</tt><br>
    <tt>+                sqlDbStrDup(db, sql_generate_column_name(idx));</tt><br>
    <tt>+        }</tt><br>
    <tt>     }</tt><br>
    <tt>-    if (k < pEList->nExpr) {</tt><br>
    <tt>+    if (i < pEList->nExpr) {</tt><br>
    <tt>         /*</tt><br>
    <tt>          * If we get here it means the result set contains one
      or more "*"</tt><br>
    <tt>          * operators that need to be expanded.  Loop through
      each expression</tt>
    <blockquote type="cite"
      cite="mid:e9ec1678-a48a-fe61-8ed0-bfb34f938df1@tarantool.org">
      <pre class="moz-quote-pre" wrap="">
Also, this looks broken:

tarantool> box.execute('SELECT *, s1 COLLATE "unicode_ci" FROM j ORDER BY column_1;')
---
- null
- Can’t resolve field 'COLUMN_1'
...
</pre>
    </blockquote>
    <tt>Now, it is OK.</tt><br>
    <blockquote type="cite"
      cite="mid:e9ec1678-a48a-fe61-8ed0-bfb34f938df1@tarantool.org">
      <pre class="moz-quote-pre" wrap="">
tarantool> box.execute('SELECT s1 COLLATE "unicode_ci" FROM j ORDER BY column_1;')
---
- metadata:
  - name: COLUMN_1
    type: scalar
  rows:
  - [1]
...

When I add '*' before the column_1, it stops working.
</pre>
    </blockquote>
    <p><tt>commit 718d7e809291b1c48c1b5bc1a0c297906319394d<br>
        Author: Roman Khabibov <a class="moz-txt-link-rfc2396E" href="mailto:roman.habibov@tarantool.org"><roman.habibov@tarantool.org></a><br>
        Date:   Thu Mar 5 12:48:58 2020 +0300<br>
        <br>
            sql: unify pattern for column names<br>
            <br>
            Name resulting columns generated by an expression or
        <VALUES><br>
            construction by the "COLUMN_N" pattern.<br>
            <br>
            Closes #3962<br>
            <br>
            @TarantoolBot document<br>
            Title: Column naming in SQL<br>
            <br>
            Now, every auto generated column is named by the "COLUMN_N"<br>
            pattern, where N is the number of column in a query
        (starting)<br>
            from 1). Auto generated column is a column in a query result<br>
            generated by an expression or a column from <VALUES><br>
            construction.<br>
            <br>
            Examples:<br>
            ```<br>
            box.execute("VALUES(1, 2, 3);")<br>
            ---<br>
            - metadata:<br>
              - name: COLUMN_1<br>
                type: integer<br>
              - name: COLUMN_2<br>
                type: integer<br>
              - name: COLUMN_3<br>
                type: integer<br>
              rows:<br>
              - [1, 2, 3]<br>
            ...<br>
            box.execute("SELECT * FROM (VALUES (1+1, 1+1));")<br>
            ---<br>
            - metadata:<br>
              - name: COLUMN_1<br>
                type: integer<br>
              - name: COLUMN_2<br>
                type: integer<br>
              rows:<br>
              - [2, 2]<br>
            ...<br>
            box.execute("SELECT 1+1, 1+1;")<br>
            ---<br>
            - metadata:<br>
              - name: COLUMN_1<br>
                type: integer<br>
              - name: COLUMN_2<br>
                type: integer<br>
              rows:<br>
              - [2, 2]<br>
            ...<br>
            ```<br>
        <br>
        diff --git a/src/box/sql/select.c b/src/box/sql/select.c<br>
        index 4b069ad..7a56136 100644<br>
        --- a/src/box/sql/select.c<br>
        +++ b/src/box/sql/select.c<br>
        @@ -1854,14 +1854,14 @@ generate_column_metadata(struct Parse
        *pParse, struct SrcList *pTabList,<br>
                     }<br>
                 } else {<br>
                     const char *z = NULL;<br>
        -            if (colname != NULL)<br>
        +            if (colname != NULL) {<br>
                         z = colname;<br>
        -            else if (span != NULL)<br>
        -                z = span;<br>
        -            else<br>
        -                z = tt_sprintf("column%d", i + 1);<br>
        +            } else {<br>
        +                uint32_t idx = ++pParse->autoname_i;<br>
        +                z = sql_generate_column_name(idx);<br>
        +            }<br>
                     vdbe_metadata_set_col_name(v, i, z);<br>
        -            if (is_full_meta && colname != NULL)<br>
        +            if (is_full_meta)<br>
                         vdbe_metadata_set_col_span(v, i, span);<br>
                 }<br>
             }<br>
        @@ -1897,7 +1897,6 @@ sqlColumnsFromExprList(Parse * parse,
        ExprList * expr_list,<br>
             /* Database connection */<br>
             sql *db = parse->db;<br>
             u32 cnt;        /* Index added to make the name unique */<br>
        -    Expr *p;        /* Expression for a single result column */<br>
             char *zName;        /* Column name */<br>
             int nName;        /* Size of name in zName[] */<br>
             Hash ht;        /* Hash table of column names */<br>
        @@ -1929,13 +1928,12 @@ sqlColumnsFromExprList(Parse * parse,
        ExprList * expr_list,<br>
             space_def->field_count = column_count;<br>
         <br>
             for (uint32_t i = 0; i < column_count; i++) {<br>
        -        /* Get an appropriate name for the column<br>
        +        /*<br>
        +         * Check if the column contains an "AS <name>"<br>
        +         * phrase.<br>
                  */<br>
        -        p = sqlExprSkipCollate(expr_list->a[i].pExpr);<br>
        -        if ((zName = expr_list->a[i].zName) != 0) {<br>
        -            /* If the column contains an "AS <name>"
        phrase, use <name> as the name */<br>
        -        } else {<br>
        -            Expr *pColExpr = p;    /* The expression that is
        the result column name */<br>
        +        if ((zName = expr_list->a[i].zName) == 0) {<br>
        +            struct Expr *pColExpr = expr_list->a[i].pExpr;<br>
                     struct space_def *space_def = NULL;<br>
                     while (pColExpr->op == TK_DOT) {<br>
                         pColExpr = pColExpr->pRight;<br>
        @@ -1951,14 +1949,14 @@ sqlColumnsFromExprList(Parse * parse,
        ExprList * expr_list,<br>
                     } else if (pColExpr->op == TK_ID) {<br>
                         assert(!ExprHasProperty(pColExpr,
        EP_IntValue));<br>
                         zName = pColExpr->u.zToken;<br>
        -            } else {<br>
        -                /* Use the original text of the column
        expression as its name */<br>
        -                zName = expr_list->a[i].zSpan;<br>
                     }<br>
                 }<br>
        -        if (zName == NULL)<br>
        -            zName = "_auto_field_";<br>
        -        zName = sqlMPrintf(db, "%s", zName);<br>
        +        if (zName == NULL) {<br>
        +            uint32_t idx = ++parse->autoname_i;<br>
        +            zName = sqlDbStrDup(db,
        sql_generate_column_name(idx));<br>
        +        } else {<br>
        +            zName = sqlDbStrDup(db, zName);<br>
        +        }<br>
         <br>
                 /* Make sure the column name is unique.  If the name is
        not unique,<br>
                  * append an integer to the name so that it becomes
        unique.<br>
        @@ -1989,6 +1987,8 @@ sqlColumnsFromExprList(Parse * parse,
        ExprList * expr_list,<br>
                     memcpy(space_def->fields[i].name, zName,
        name_len);<br>
                     space_def->fields[i].name[name_len] = '\0';<br>
                 }<br>
        +        sqlDbFree(db, expr_list->a[i].zName);<br>
        +        expr_list->a[i].zName = zName;<br>
             }<br>
         cleanup:<br>
             sqlHashClear(&ht);<br>
        @@ -4792,6 +4792,25 @@ selectPopWith(Walker * pWalker, Select *
        p)<br>
             }<br>
         }<br>
         <br>
        +/**<br>
        + * Determine whether to generate a name for @a expr or not.<br>
        + *<br>
        + * Auto generated names is needed for every item in  a
        <SELECT><br>
        + * expression list except asterisks, dots and column names
        (also<br>
        + * if this item hasn't alias).<br>
        + *<br>
        + * @param expr Expression from expression list to analyze.<br>
        + *<br>
        + * @retval true/false If item is/isn't needed needed to name.<br>
        + */<br>
        +static bool<br>
        +is_needed_to_name(struct Expr *expr) {<br>
        +    if (expr->op != TK_ASTERISK && expr->op !=
        TK_DOT &&<br>
        +        ((expr->flags & EP_Leaf) == 0 || expr->op !=
        TK_ID))<br>
        +        return true;<br>
        +    return false;<br>
        +}<br>
        +<br>
         /*<br>
          * This routine is a Walker callback for "expanding" a SELECT
        statement.<br>
          * "Expanding" means to do the following:<br>
        @@ -4941,19 +4960,27 @@ selectExpander(Walker * pWalker, Select
        * p)<br>
              * all tables.<br>
              *<br>
              * The first loop just checks to see if there are any "*"
        operators<br>
        -     * that need expanding.<br>
        +     * that need expanding and name items of the expression<br>
        +     * list if needed.<br>
              */<br>
        +    i = pEList->nExpr;<br>
             for (k = 0; k < pEList->nExpr; k++) {<br>
                 pE = pEList->a[k].pExpr;<br>
        -        if (pE->op == TK_ASTERISK)<br>
        -            break;<br>
        +        if (pE->op == TK_ASTERISK && i ==
        pEList->nExpr)<br>
        +            i = k;<br>
                 assert(pE->op != TK_DOT || pE->pRight != 0);<br>
                 assert(pE->op != TK_DOT<br>
                        || (pE->pLeft != 0 &&
        pE->pLeft->op == TK_ID));<br>
        -        if (pE->op == TK_DOT && pE->pRight->op
        == TK_ASTERISK)<br>
        -            break;<br>
        +        if (pE->op == TK_DOT && pE->pRight->op
        == TK_ASTERISK  &&<br>
        +            i == pEList->nExpr)<br>
        +            i = k;<br>
        +        if (pEList->a[k].zName == NULL &&
        is_needed_to_name(pE)) {<br>
        +            uint32_t idx = ++pParse->autoname_i;<br>
        +            pEList->a[k].zName =<br>
        +                sqlDbStrDup(db, sql_generate_column_name(idx));<br>
        +        }<br>
             }<br>
        -    if (k < pEList->nExpr) {<br>
        +    if (i < pEList->nExpr) {<br>
                 /*<br>
                  * If we get here it means the result set contains one
        or more "*"<br>
                  * operators that need to be expanded.  Loop through
        each expression<br>
        diff --git a/src/box/sql/sqlInt.h b/src/box/sql/sqlInt.h<br>
        index 37283e5..adf90d8 100644<br>
        --- a/src/box/sql/sqlInt.h<br>
        +++ b/src/box/sql/sqlInt.h<br>
        @@ -2227,6 +2227,8 @@ struct Parse {<br>
             TriggerPrg *pTriggerPrg;    /* Linked list of coded
        triggers */<br>
             With *pWith;        /* Current WITH clause, or NULL */<br>
             With *pWithToFree;    /* Free this WITH object at the end
        of the parse */<br>
        +    /** Index of previous auto generated name. */<br>
        +    uint32_t autoname_i;<br>
             /** Space triggers are being coded for. */<br>
             struct space *triggered_space;<br>
             /**<br>
        @@ -4530,4 +4532,17 @@ void<br>
         sql_setting_set(struct Parse *parse_context, struct Token
        *name,<br>
                 struct Expr *value);<br>
         <br>
        +/**<br>
        + * Return a string of the form "COLUMN_N", where N is @a
        number.<br>
        + *<br>
        + * We decided to name every auto generated column in output by<br>
        + * this pattern (like PostgreSQL), because it is more
        convenient<br>
        + * than "_auto_name_" and naming with span like MariaDB do.<br>
        + */<br>
        +static inline const char *<br>
        +sql_generate_column_name(uint32_t number)<br>
        +{<br>
        +    return tt_sprintf("COLUMN_%d", number);<br>
        +}<br>
        +<br>
         #endif                /* sqlINT_H */<br>
        diff --git a/test/box/function1.result
        b/test/box/function1.result<br>
        index 905a4cd..928cd57 100644<br>
        --- a/test/box/function1.result<br>
        +++ b/test/box/function1.result<br>
        @@ -449,7 +449,7 @@ box.execute('SELECT "function1.divide"(6, 3,
        3)')<br>
         box.execute('SELECT "function1.divide"(6, 3)')<br>
         ---<br>
         - metadata:<br>
        -  - name: '"function1.divide"(6, 3)'<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [2]<br>
        @@ -457,7 +457,7 @@ box.execute('SELECT "function1.divide"(6,
        3)')<br>
         box.execute('SELECT "function1.divide"(5, 2)')<br>
         ---<br>
         - metadata:<br>
        -  - name: '"function1.divide"(5, 2)'<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [2.5]<br>
        @@ -482,7 +482,7 @@ test_run:cmd("setopt delimiter ''");<br>
         box.execute('SELECT summarize(1, 2)')<br>
         ---<br>
         - metadata:<br>
        -  - name: summarize(1, 2)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [3]<br>
        @@ -505,7 +505,7 @@ test_run:cmd("setopt delimiter ''");<br>
         box.execute('SELECT summarize(1, 2)')<br>
         ---<br>
         - metadata:<br>
        -  - name: summarize(1, 2)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [3]<br>
        @@ -519,7 +519,7 @@ box.func.SUMMARIZE:drop()<br>
         box.execute('SELECT lua(\'return 1 + 1\')')<br>
         ---<br>
         - metadata:<br>
        -  - name: lua('return 1 + 1')<br>
        +  - name: COLUMN_1<br>
             type: any<br>
           rows:<br>
           - [2]<br>
        @@ -537,7 +537,7 @@ box.execute('SELECT lua(\'return
        box.cfg()\')')<br>
         box.execute('SELECT lua(\'return box.cfg.memtx_memory\')')<br>
         ---<br>
         - metadata:<br>
        -  - name: lua('return box.cfg.memtx_memory')<br>
        +  - name: COLUMN_1<br>
             type: any<br>
           rows:<br>
           - [107374182]<br>
        diff --git a/test/sql-tap/colname.test.lua
        b/test/sql-tap/colname.test.lua<br>
        index caa61a0..a9b0c92 100755<br>
        --- a/test/sql-tap/colname.test.lua<br>
        +++ b/test/sql-tap/colname.test.lua<br>
        @@ -1,6 +1,6 @@<br>
         #!/usr/bin/env tarantool<br>
         test = require("sqltester")<br>
        -test:plan(62)<br>
        +test:plan(75)<br>
         <br>
         --!./tcltestrunner.lua<br>
         -- 2008 July 15<br>
        @@ -94,7 +94,7 @@ test:do_execsql2_test(<br>
                 SELECT +tabc.a, -tabc.b, tabc.c, * FROM tabc<br>
             ]], {<br>
                 -- <colname-2.3><br>
        -        "+tabc.a",1,"-tabc.b",-2,"C",3,"A",1,"B",2,"C",3<br>
        +        "COLUMN_1",1,"COLUMN_2",-2,"C",3,"A",1,"B",2,"C",3<br>
                 -- </colname-2.3><br>
             })<br>
         <br>
        @@ -194,7 +194,7 @@ test:do_execsql2_test(<br>
                 SELECT +tabc.a, -tabc.b, tabc.c FROM tabc<br>
             ]], {<br>
                 -- <colname-3.3><br>
        -        "+tabc.a", 1, "-tabc.b", -2, "C", 3<br>
        +        "COLUMN_1",1,"COLUMN_2",-2,"C",3<br>
                 -- </colname-3.3><br>
             })<br>
         <br>
        @@ -314,7 +314,7 @@ test:do_execsql2_test(<br>
                 SELECT +tabc.a, -tabc.b, tabc.c FROM tabc<br>
             ]], {<br>
                 -- <colname-4.3><br>
        -        "+tabc.a", 1, "-tabc.b", -2, "TABC.C", 3<br>
        +        "COLUMN_1",1,"COLUMN_2",-2,"TABC.C",3<br>
                 -- </colname-4.3><br>
             })<br>
         <br>
        @@ -635,4 +635,118 @@ test:do_catchsql_test(<br>
             [[ CREATE INDEX t1c ON table1('c'); ]],<br>
             {1, "/Tarantool does not support functional indexes/"})<br>
         <br>
        +--<br>
        +-- gh-3962: Check auto generated names in different selects.<br>
        +--<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.1",<br>
        +    [[<br>
        +        VALUES(1, 2, 'aaa');<br>
        +    ]], {<br>
        +        "COLUMN_1",1,"COLUMN_2",2,"COLUMN_3","aaa"<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.2",<br>
        +    [[<br>
        +        SELECT * FROM (VALUES (1+1, 1+1, 'aaa'));<br>
        +    ]], {<br>
        +        "COLUMN_1",2,"COLUMN_2",2,"COLUMN_3","aaa"<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.3",<br>
        +    [[<br>
        +        SELECT 1+1, 1+1, 'aaa';<br>
        +    ]], {<br>
        +        "COLUMN_1",2,"COLUMN_2",2,"COLUMN_3","aaa"<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.4",<br>
        +    [[<br>
        +        SELECT * FROM (SELECT * FROM (VALUES(1, 2, 'aaa'))),<br>
        +                      (SELECT * FROM (VALUES(1, 2, 'aaa')))<br>
        +    ]], {<br>
        +       
        "COLUMN_1",1,"COLUMN_2",2,"COLUMN_3","aaa","COLUMN_4",1,"COLUMN_5",2,<br>
        +        "COLUMN_6","aaa"<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.5",<br>
        +    [[<br>
        +        CREATE TABLE j (s1 SCALAR PRIMARY KEY);<br>
        +        INSERT INTO j VALUES(1);<br>
        +    ]], {})<br>
        +<br>
        +--<br>
        +-- Column named as 'COLUMN_1', because of <COLLATE>.<br>
        +--<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.6",<br>
        +    [[<br>
        +        SELECT s1 COLLATE "unicode_ci" FROM j;<br>
        +    ]], {<br>
        +        "COLUMN_1",1<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.7",<br>
        +    [[<br>
        +        SELECT s1 COLLATE "unicode_ci" FROM j ORDER BY
        column_1;<br>
        +    ]], {<br>
        +        "COLUMN_1",1<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.8",<br>
        +    [[<br>
        +        SELECT * FROM (SELECT s1 COLLATE "unicode_ci" FROM j<br>
        +                       ORDER BY column_1) ORDER BY column_1;<br>
        +    ]], {<br>
        +        "COLUMN_1",1<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.9",<br>
        +    [[<br>
        +        SELECT s1 COLLATE "unicode_ci" FROM j GROUP BY
        column_1;<br>
        +    ]], {<br>
        +        "COLUMN_1",1<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.10",<br>
        +    [[<br>
        +        SELECT * FROM (SELECT s1 COLLATE "unicode_ci" FROM j<br>
        +                       ORDER BY column_1) GROUP BY column_1;<br>
        +    ]], {<br>
        +        "COLUMN_1",1<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.11",<br>
        +    [[<br>
        +        SELECT * FROM (SELECT s1 COLLATE "unicode_ci" FROM j<br>
        +                       ORDER BY column_1) WHERE column_1 = 1;<br>
        +    ]], {<br>
        +        "COLUMN_1",1<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.12",<br>
        +    [[<br>
        +        SELECT *, s1 COLLATE "unicode_ci" FROM j ORDER BY
        column_1;<br>
        +    ]], {<br>
        +        "S1",1,"COLUMN_1",1<br>
        +    })<br>
        +<br>
        +test:do_execsql2_test(<br>
        +    "colname-12.13",<br>
        +    [[<br>
        +        SELECT s1 COLLATE "unicode_ci", * FROM j ORDER BY
        column_1;<br>
        +    ]], {<br>
        +        "COLUMN_1",1,"S1",1<br>
        +    })<br>
        +<br>
         test:finish_test()<br>
        diff --git a/test/sql-tap/select1.test.lua
        b/test/sql-tap/select1.test.lua<br>
        index fbebfab..80e94b0 100755<br>
        --- a/test/sql-tap/select1.test.lua<br>
        +++ b/test/sql-tap/select1.test.lua<br>
        @@ -1032,7 +1032,7 @@ test:do_catchsql2_test(<br>
                 SELECT f1+F2 FROM test1 ORDER BY f2<br>
             ]], {<br>
                 -- <select1-6.4a><br>
        -        0, {"f1+F2", 33, "f1+F2", 77}<br>
        +        0, {"COLUMN_1",33,"COLUMN_1",77}<br>
                 -- </select1-6.4a><br>
             })<br>
         <br>
        @@ -1042,7 +1042,7 @@ test:do_catchsql2_test(<br>
                 SELECT test1.f1+F2 FROM test1 ORDER BY f2<br>
             ]], {<br>
                 -- <select1-6.5><br>
        -        0, {"test1.f1+F2", 33, "test1.f1+F2", 77}<br>
        +        0, {"COLUMN_1",33,"COLUMN_1",77}<br>
                 -- </select1-6.5><br>
             })<br>
         <br>
        @@ -1059,7 +1059,7 @@ test:do_test(<br>
                 return table.insert(v,msg) or v<br>
             end, {<br>
                 -- <select1-6.5.1><br>
        -        0, {'test1.f1+F2', 33, 'test1.f1+F2', 77}<br>
        +        0, {"COLUMN_1",33,"COLUMN_1",77}<br>
                 -- </select1-6.5.1><br>
             })<br>
         <br>
        @@ -1068,7 +1068,7 @@ test:do_catchsql2_test(<br>
             [[SELECT test1.f1+F2, t1 FROM test1, test2 <br>
                  ORDER BY f2]], {<br>
                 -- <select1-6.6><br>
        -        0, {"test1.f1+F2", 33, "T1", "abc", "test1.f1+F2", 77,
        "T1", "abc"}<br>
        +        0, {"COLUMN_1",33,"T1","abc","COLUMN_1",77,"T1","abc"}<br>
                 -- </select1-6.6><br>
             })<br>
         <br>
        @@ -1161,7 +1161,7 @@ test:do_test(<br>
                 ]]<br>
             end, {<br>
                 -- <select1-6.9.5><br>
        -        "123.45", 123.45<br>
        +        "COLUMN_1",123.45<br>
                 -- </select1-6.9.5><br>
             })<br>
         <br>
        @@ -1189,7 +1189,8 @@ test:do_test(<br>
                 return x<br>
             end, {<br>
                 -- <select1-6.9.7><br>
        -        "A.F1", 11, "A.F2", 22, "sql_subquery.5", 5,
        "sql_subquery.6", 6<br>
        +        "A.F1", 11, "A.F2", 22, "sql_subquery.COLUMN_1", 5,<br>
        +        "sql_subquery.COLUMN_2", 6<br>
                 -- </select1-6.9.7><br>
             })<br>
         <br>
        @@ -1816,7 +1817,7 @@ test:do_execsql2_test(<br>
                     SELECT * FROM t3, (SELECT max(a), max(b) FROM t4)
        as "tx"<br>
                 ]], {<br>
                     -- <select1-11.14><br>
        -            "ID", 0, "A", "1", "B", "2", "max(a)", 3, "max(b)",
        "4"<br>
        +            "ID", 0, "A", "1", "B", "2", "COLUMN_1", 3,
        "COLUMN_2", "4"<br>
                     -- </select1-11.14><br>
                 })<br>
         <br>
        @@ -1826,7 +1827,7 @@ test:do_execsql2_test(<br>
                     SELECT y.*, t3.* FROM t3, (SELECT max(a), max(b)
        FROM t4) AS y<br>
                 ]], {<br>
                     -- <select1-11.15><br>
        -            "max(a)", 3, "max(b)", "4", "ID", 0, "A", "1", "B",
        "2"<br>
        +            "COLUMN_1", 3, "COLUMN_2", "4", "ID", 0, "A", "1",
        "B", "2"<br>
                     -- </select1-11.15><br>
                 })<br>
         <br>
        @@ -1850,7 +1851,7 @@ test:do_execsql2_test(<br>
                 SELECT 1+2+3<br>
             ]], {<br>
                 -- <select1-12.1><br>
        -        "1+2+3", 6<br>
        +        "COLUMN_1",6<br>
                 -- </select1-12.1><br>
             })<br>
         <br>
        @@ -1860,7 +1861,7 @@ test:do_execsql2_test(<br>
                 SELECT 1,'hello',2<br>
             ]], {<br>
                 -- <select1-12.2><br>
        -        '1', 1, "'hello'", "hello", '2', 2<br>
        +        "COLUMN_1",1,"COLUMN_2","hello","COLUMN_3",2<br>
                 -- </select1-12.2><br>
             })<br>
         <br>
        diff --git a/test/sql-tap/select6.test.lua
        b/test/sql-tap/select6.test.lua<br>
        index c9960dc..380fd67 100755<br>
        --- a/test/sql-tap/select6.test.lua<br>
        +++ b/test/sql-tap/select6.test.lua<br>
        @@ -128,9 +128,9 @@ test:do_execsql_test(<br>
         test:do_execsql_test(<br>
             "select6-1.7",<br>
             [=[<br>
        -        SELECT a.y, a."count(*)", "max(x)", "count(*)"<br>
        -        FROM (SELECT count(*),y FROM t1 GROUP BY y) AS a,<br>
        -             (SELECT max(x),y FROM t1 GROUP BY y) as b<br>
        +        SELECT a.y, a.COLUMN_1, COLUMN_2, COLUMN_1<br>
        +        FROM (SELECT count(*), y FROM t1 GROUP BY y) AS a,<br>
        +             (SELECT max(x), y FROM t1 GROUP BY y) as b<br>
                 WHERE a.y=b.y ORDER BY a.y<br>
             ]=], {<br>
                 -- <select6-1.7><br>
        @@ -154,9 +154,9 @@ test:do_execsql_test(<br>
         test:do_execsql_test(<br>
             "select6-1.9",<br>
             [=[<br>
        -        SELECT q, p, r, b."min(x)+y"<br>
        +        SELECT q, p, r, min<br>
                 FROM (SELECT count(*) as p , y as q FROM t1 GROUP BY y)
        AS a,<br>
        -             (SELECT max(x) as r, y as s, min(x)+y FROM t1
        GROUP BY y) as b<br>
        +             (SELECT max(x) as r, y as s, min(x)+y AS min FROM
        t1 GROUP BY y) as b<br>
                 WHERE q=s ORDER BY s<br>
             ]=], {<br>
                 -- <select6-1.9><br>
        @@ -247,9 +247,9 @@ test:do_execsql_test(<br>
         test:do_execsql_test(<br>
             "select6-2.7",<br>
             [=[<br>
        -        SELECT a.b, a."count(*)", "max(a)", "count(*)"<br>
        -        FROM (SELECT count(*),b FROM t2 GROUP BY b) AS a,<br>
        -             (SELECT max(a),b FROM t2 GROUP BY b) as b<br>
        +        SELECT a.b, a.count, max, count<br>
        +        FROM (SELECT count(*) AS count, b FROM t2 GROUP BY b)
        AS a,<br>
        +             (SELECT max(a) AS max, b FROM t2 GROUP BY b) as b<br>
                 WHERE a.b=b.b ORDER BY a.b<br>
             ]=], {<br>
                 -- <select6-2.7><br>
        @@ -432,8 +432,8 @@ test:do_execsql_test(<br>
         test:do_execsql_test(<br>
             "select6-3.14",<br>
             [=[<br>
        -        SELECT "count(*)",y FROM (SELECT count(*), y FROM t1
        GROUP BY y)<br>
        -        ORDER BY "count(*)"<br>
        +        SELECT count, y FROM (SELECT count(*) AS count, y FROM
        t1 GROUP BY y)<br>
        +        ORDER BY count<br>
             ]=], {<br>
                 -- <select6-3.14><br>
                 1, 1, 2, 2, 4, 3, 5, 5, 8, 4<br>
        @@ -443,7 +443,7 @@ test:do_execsql_test(<br>
         test:do_execsql_test(<br>
             "select6-3.15",<br>
             [=[<br>
        -        SELECT "count(*)",y FROM (SELECT count(*), y FROM t1
        GROUP BY y)<br>
        +        SELECT count, y FROM (SELECT count(*) AS count, y FROM
        t1 GROUP BY y)<br>
                 ORDER BY y<br>
             ]=], {<br>
                 -- <select6-3.15><br>
        diff --git a/test/sql-tap/view.test.lua
        b/test/sql-tap/view.test.lua<br>
        index e553b91..66374e3 100755<br>
        --- a/test/sql-tap/view.test.lua<br>
        +++ b/test/sql-tap/view.test.lua<br>
        @@ -265,7 +265,7 @@ test:do_execsql2_test(<br>
                 SELECT * FROM v1 LIMIT 1<br>
             ]], {<br>
                 -- <view-3.3.1><br>
        -        "XYZ", 2, "PQR", 7, "c-b", 1<br>
        +        "XYZ", 2, "PQR", 7, "COLUMN_1", 1<br>
                 -- </view-3.3.1><br>
             })<br>
         <br>
        @@ -276,7 +276,7 @@ test:do_execsql2_test(<br>
                 SELECT * FROM v1b LIMIT 1<br>
             ]], {<br>
                 -- <view-3.3.2><br>
        -        "A", 2, "b+c", 7, "C", 4<br>
        +        "A", 2, "COLUMN_1", 7, "C", 4<br>
                 -- </view-3.3.2><br>
             })<br>
         <br>
        diff --git a/test/sql/bind.result b/test/sql/bind.result<br>
        index b240940..cb03028 100644<br>
        --- a/test/sql/bind.result<br>
        +++ b/test/sql/bind.result<br>
        @@ -77,11 +77,11 @@ execute('SELECT * FROM test WHERE id =
        :value', parameters)<br>
         execute('SELECT ?, ?, ?', {1, 2, 3})<br>
         ---<br>
         - metadata:<br>
        -  - name: '?'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '?'<br>
        +  - name: COLUMN_2<br>
             type: integer<br>
        -  - name: '?'<br>
        +  - name: COLUMN_3<br>
             type: integer<br>
           rows:<br>
           - [1, 2, 3]<br>
        @@ -107,11 +107,11 @@ parameters[3][':value1'] = 11<br>
         execute('SELECT ?, :value1, @value2', parameters)<br>
         ---<br>
         - metadata:<br>
        -  - name: '?'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: :value1<br>
        +  - name: COLUMN_2<br>
             type: integer<br>
        -  - name: '@value2'<br>
        +  - name: COLUMN_3<br>
             type: integer<br>
           rows:<br>
           - [10, 11, 12]<br>
        @@ -149,22 +149,22 @@ parameters[6]['@value2'] = 6<br>
         execute('SELECT :value3, ?, :value1, ?, ?, @value2, ?,
        :value3', parameters)<br>
         ---<br>
         - metadata:<br>
        -  - name: :value3<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '?'<br>
        +  - name: COLUMN_2<br>
             type: integer<br>
        -  - name: :value1<br>
        +  - name: COLUMN_3<br>
             type: integer<br>
        -  - name: '?'<br>
        +  - name: COLUMN_4<br>
             type: integer<br>
        -  - name: '?'<br>
        +  - name: COLUMN_5<br>
             type: integer<br>
        -  - name: '@value2'<br>
        +  - name: COLUMN_6<br>
             type: integer<br>
        -  - name: '?'<br>
        +  - name: COLUMN_7<br>
        +    type: boolean<br>
        +  - name: COLUMN_8<br>
             type: boolean<br>
        -  - name: :value3<br>
        -    type: integer<br>
           rows:<br>
           - [1, 2, 3, 4, 5, 6, null, 1]<br>
         ...<br>
        @@ -175,15 +175,15 @@ msgpack = require('msgpack')<br>
         execute('SELECT ?, ?, ?, ?, ?', {'abc', -123.456, msgpack.NULL,
        true, false})<br>
         ---<br>
         - metadata:<br>
        -  - name: '?'<br>
        +  - name: COLUMN_1<br>
             type: text<br>
        -  - name: '?'<br>
        +  - name: COLUMN_2<br>
             type: numeric<br>
        -  - name: '?'<br>
        +  - name: COLUMN_3<br>
             type: boolean<br>
        -  - name: '?'<br>
        +  - name: COLUMN_4<br>
             type: boolean<br>
        -  - name: '?'<br>
        +  - name: COLUMN_5<br>
             type: boolean<br>
           rows:<br>
           - ['abc', -123.456, null, true, false]<br>
        @@ -290,7 +290,7 @@ execute('SELECT :value', parameters)<br>
         execute('SELECT ? ', {18446744073709551615ULL})<br>
         ---<br>
         - metadata:<br>
        -  - name: '?'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [18446744073709551615]<br>
        diff --git a/test/sql/boolean.result b/test/sql/boolean.result<br>
        index 112e41a..51ec582 100644<br>
        --- a/test/sql/boolean.result<br>
        +++ b/test/sql/boolean.result<br>
        @@ -241,7 +241,7 @@ i > 0<br>
         SELECT return_type(a) FROM t;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: return_type(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['boolean']<br>
        @@ -250,7 +250,7 @@ SELECT return_type(a) FROM t;<br>
         SELECT return_type('false');<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: return_type('false')<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['string']<br>
        @@ -258,7 +258,7 @@ SELECT return_type('false');<br>
         SELECT is_boolean(a) FROM t LIMIT 1;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: is_boolean(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -266,7 +266,7 @@ SELECT is_boolean(a) FROM t LIMIT 1;<br>
         SELECT is_boolean('true');<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: is_boolean('true')<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -281,7 +281,7 @@ SELECT abs(a) FROM t0;<br>
         SELECT lower(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: lower(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['false']<br>
        @@ -292,7 +292,7 @@ SELECT lower(a) FROM t0;<br>
         SELECT upper(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: upper(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['FALSE']<br>
        @@ -303,7 +303,7 @@ SELECT upper(a) FROM t0;<br>
         SELECT quote(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: quote(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['FALSE']<br>
        @@ -315,7 +315,7 @@ SELECT quote(a) FROM t0;<br>
         SELECT length(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: length(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
          |   rows:<br>
          |   - [5]<br>
        @@ -326,7 +326,7 @@ SELECT length(a) FROM t0;<br>
         SELECT typeof(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: typeof(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['boolean']<br>
        @@ -344,7 +344,7 @@ SELECT AVG(a) FROM t0;<br>
         SELECT MIN(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: MIN(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: scalar<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -352,7 +352,7 @@ SELECT MIN(a) FROM t0;<br>
         SELECT MAX(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: MAX(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: scalar<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -365,7 +365,7 @@ SELECT SUM(a) FROM t0;<br>
         SELECT COUNT(a) FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: COUNT(a)<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
          |   rows:<br>
          |   - [2]<br>
        @@ -378,7 +378,7 @@ SELECT TOTAL(a) FROM t0;<br>
         SELECT GROUP_CONCAT(a, ' +++ ') FROM t0;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: GROUP_CONCAT(a, ' +++ ')<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['FALSE +++ TRUE']<br>
        @@ -392,13 +392,13 @@ SELECT GROUP_CONCAT(a, ' +++ ') FROM t0;<br>
         box.execute('SELECT ?, ?, return_type($1), typeof($2);', {true,
        false})<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: '?'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: '?'<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
        - |   - name: return_type($1)<br>
        + |   - name: COLUMN_3<br>
          |     type: string<br>
        - |   - name: typeof($2)<br>
        + |   - name: COLUMN_4<br>
          |     type: string<br>
          |   rows:<br>
          |   - [true, false, 'boolean', 'boolean']<br>
        @@ -422,9 +422,9 @@ parameters[2][':value1'] = false<br>
         box.execute('SELECT :value1, @value2;', parameters)<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: :value1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: '@value2'<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -501,9 +501,9 @@ INSERT INTO t3 VALUES (4, false)<br>
         SELECT cast(true AS INTEGER), cast(false AS INTEGER);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast(true AS INTEGER)<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
        - |   - name: cast(false AS INTEGER)<br>
        + |   - name: COLUMN_2<br>
          |     type: integer<br>
          |   rows:<br>
          |   - [1, 0]<br>
        @@ -511,9 +511,9 @@ SELECT cast(true AS INTEGER), cast(false AS
        INTEGER);<br>
         SELECT cast(true AS NUMBER), cast(false AS NUMBER);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast(true AS NUMBER)<br>
        + |   - name: COLUMN_1<br>
          |     type: number<br>
        - |   - name: cast(false AS NUMBER)<br>
        + |   - name: COLUMN_2<br>
          |     type: number<br>
          |   rows:<br>
          |   - [1, 0]<br>
        @@ -522,9 +522,9 @@ SELECT cast(true AS NUMBER), cast(false AS
        NUMBER);<br>
         SELECT cast(true AS TEXT), cast(false AS TEXT);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast(true AS TEXT)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
        - |   - name: cast(false AS TEXT)<br>
        + |   - name: COLUMN_2<br>
          |     type: string<br>
          |   rows:<br>
          |   - ['TRUE', 'FALSE']<br>
        @@ -532,9 +532,9 @@ SELECT cast(true AS TEXT), cast(false AS
        TEXT);<br>
         SELECT cast(true AS BOOLEAN), cast(false AS BOOLEAN);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast(true AS BOOLEAN)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: cast(false AS BOOLEAN)<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true, false]<br>
        @@ -544,11 +544,11 @@ SELECT cast(true AS BOOLEAN), cast(false
        AS BOOLEAN);<br>
         SELECT cast(100 AS BOOLEAN), cast(1 AS BOOLEAN), cast(0 AS
        BOOLEAN);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast(100 AS BOOLEAN)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: cast(1 AS BOOLEAN)<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
        - |   - name: cast(0 AS BOOLEAN)<br>
        + |   - name: COLUMN_3<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true, true, false]<br>
        @@ -556,9 +556,9 @@ SELECT cast(100 AS BOOLEAN), cast(1 AS
        BOOLEAN), cast(0 AS BOOLEAN);<br>
         SELECT cast(0.123 AS BOOLEAN), cast(0.0 AS BOOLEAN);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast(0.123 AS BOOLEAN)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: cast(0.0 AS BOOLEAN)<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true, false]<br>
        @@ -566,9 +566,9 @@ SELECT cast(0.123 AS BOOLEAN), cast(0.0 AS
        BOOLEAN);<br>
         SELECT cast('true' AS BOOLEAN), cast('false' AS BOOLEAN);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast('true' AS BOOLEAN)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: cast('false' AS BOOLEAN)<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true, false]<br>
        @@ -576,9 +576,9 @@ SELECT cast('true' AS BOOLEAN), cast('false'
        AS BOOLEAN);<br>
         SELECT cast('TRUE' AS BOOLEAN), cast('FALSE' AS BOOLEAN);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: cast('TRUE' AS BOOLEAN)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: cast('FALSE' AS BOOLEAN)<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true, false]<br>
        @@ -887,7 +887,7 @@ SELECT a, COUNT(*) FROM (SELECT * FROM t4
        UNION SELECT * FROM t5) GROUP BY a;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: COUNT(*)<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
          |   rows:<br>
          |   - [false, 3]<br>
        @@ -907,7 +907,7 @@ INSERT INTO t6 VALUES (true, false), (false,
        true);<br>
         SELECT NOT true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: NOT true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -915,7 +915,7 @@ SELECT NOT true;<br>
         SELECT NOT false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: NOT false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -925,7 +925,7 @@ SELECT a, NOT a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: NOT a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -935,7 +935,7 @@ SELECT a, NOT a FROM t;<br>
         SELECT true AND true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -943,7 +943,7 @@ SELECT true AND true;<br>
         SELECT true AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -951,7 +951,7 @@ SELECT true AND false;<br>
         SELECT false AND true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -959,7 +959,7 @@ SELECT false AND true;<br>
         SELECT false AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -967,7 +967,7 @@ SELECT false AND false;<br>
         SELECT true OR true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true OR true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -975,7 +975,7 @@ SELECT true OR true;<br>
         SELECT true OR false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true OR false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -983,7 +983,7 @@ SELECT true OR false;<br>
         SELECT false OR true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false OR true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -991,7 +991,7 @@ SELECT false OR true;<br>
         SELECT false OR false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false OR false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1002,7 +1002,7 @@ SELECT a, true AND a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true AND a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1013,7 +1013,7 @@ SELECT a, false AND a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false AND a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1024,7 +1024,7 @@ SELECT a, true OR a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true OR a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1035,7 +1035,7 @@ SELECT a, false OR a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false OR a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1046,7 +1046,7 @@ SELECT a, a AND true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1057,7 +1057,7 @@ SELECT a, a AND false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1068,7 +1068,7 @@ SELECT a, a OR true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a OR true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1079,7 +1079,7 @@ SELECT a, a OR false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a OR false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1093,7 +1093,7 @@ SELECT a, a1, a AND a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a AND a1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false, false]<br>
        @@ -1108,7 +1108,7 @@ SELECT a, a1, a OR a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a OR a1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false, false]<br>
        @@ -1622,7 +1622,7 @@ SELECT a1, a2, a2 || a2 FROM t6;<br>
         SELECT true > true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true > true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1630,7 +1630,7 @@ SELECT true > true;<br>
         SELECT true > false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true > false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1638,7 +1638,7 @@ SELECT true > false;<br>
         SELECT false > true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false > true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1646,7 +1646,7 @@ SELECT false > true;<br>
         SELECT false > false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false > false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1654,7 +1654,7 @@ SELECT false > false;<br>
         SELECT true < true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true < true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1662,7 +1662,7 @@ SELECT true < true;<br>
         SELECT true < false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true < false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1670,7 +1670,7 @@ SELECT true < false;<br>
         SELECT false < true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false < true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1678,7 +1678,7 @@ SELECT false < true;<br>
         SELECT false < false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false < false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1689,7 +1689,7 @@ SELECT a, true > a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true > a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1700,7 +1700,7 @@ SELECT a, false > a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false > a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1711,7 +1711,7 @@ SELECT a, true < a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true < a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1722,7 +1722,7 @@ SELECT a, false < a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false < a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1733,7 +1733,7 @@ SELECT a, a > true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a > true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1744,7 +1744,7 @@ SELECT a, a > false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a > false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1755,7 +1755,7 @@ SELECT a, a < true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a < true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1766,7 +1766,7 @@ SELECT a, a < false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a < false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1780,7 +1780,7 @@ SELECT a, a1, a > a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a > a1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false, false]<br>
        @@ -1795,7 +1795,7 @@ SELECT a, a1, a < a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a < a1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false, false]<br>
        @@ -1807,7 +1807,7 @@ SELECT a, a1, a < a1 FROM t, t6;<br>
         SELECT true >= true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true >= true<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1815,7 +1815,7 @@ SELECT true >= true;<br>
         SELECT true >= false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true >= false<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1823,7 +1823,7 @@ SELECT true >= false;<br>
         SELECT false >= true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false >= true<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1831,7 +1831,7 @@ SELECT false >= true;<br>
         SELECT false >= false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false >= false<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1839,7 +1839,7 @@ SELECT false >= false;<br>
         SELECT true <= true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true <= true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1847,7 +1847,7 @@ SELECT true <= true;<br>
         SELECT true <= false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true <= false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -1855,7 +1855,7 @@ SELECT true <= false;<br>
         SELECT false <= true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false <= true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1863,7 +1863,7 @@ SELECT false <= true;<br>
         SELECT false <= false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false <= false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -1874,7 +1874,7 @@ SELECT a, true >= a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true >= a<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1885,7 +1885,7 @@ SELECT a, false >= a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false >= a<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1896,7 +1896,7 @@ SELECT a, true <= a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true <= a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1907,7 +1907,7 @@ SELECT a, false <= a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false <= a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1918,7 +1918,7 @@ SELECT a, a >= true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a >= true<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -1929,7 +1929,7 @@ SELECT a, a >= false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a >= false<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1940,7 +1940,7 @@ SELECT a, a <= true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a <= true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1951,7 +1951,7 @@ SELECT a, a <= false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a <= false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -1965,7 +1965,7 @@ SELECT a, a1, a >= a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a >= a1<br>
        + |   - name: COLUMN_1<br>
          |     type: any<br>
          |   rows:<br>
          |   - [false, false, true]<br>
        @@ -1980,7 +1980,7 @@ SELECT a, a1, a <= a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a <= a1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false, true]<br>
        @@ -1992,7 +1992,7 @@ SELECT a, a1, a <= a1 FROM t, t6;<br>
         SELECT true == true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true == true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2000,7 +2000,7 @@ SELECT true == true;<br>
         SELECT true == false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true == false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2008,7 +2008,7 @@ SELECT true == false;<br>
         SELECT false == true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false == true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2016,7 +2016,7 @@ SELECT false == true;<br>
         SELECT false == false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false == false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2024,7 +2024,7 @@ SELECT false == false;<br>
         SELECT true != true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true != true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2032,7 +2032,7 @@ SELECT true != true;<br>
         SELECT true != false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true != false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2040,7 +2040,7 @@ SELECT true != false;<br>
         SELECT false != true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false != true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2048,7 +2048,7 @@ SELECT false != true;<br>
         SELECT false != false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false != false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2059,7 +2059,7 @@ SELECT a, true == a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true == a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -2070,7 +2070,7 @@ SELECT a, false == a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false == a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2081,7 +2081,7 @@ SELECT a, true != a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: true != a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2092,7 +2092,7 @@ SELECT a, false != a FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: false != a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -2103,7 +2103,7 @@ SELECT a, a == true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a == true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -2114,7 +2114,7 @@ SELECT a, a == false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a == false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2125,7 +2125,7 @@ SELECT a, a != true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a != true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2136,7 +2136,7 @@ SELECT a, a != false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a != false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -2150,7 +2150,7 @@ SELECT a, a1, a == a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a == a1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false, true]<br>
        @@ -2165,7 +2165,7 @@ SELECT a, a1, a != a1 FROM t, t6;<br>
          |     type: boolean<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a != a1<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false, false]<br>
        @@ -2177,7 +2177,7 @@ SELECT a, a1, a != a1 FROM t, t6;<br>
         SELECT true IN (true);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (true)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2185,7 +2185,7 @@ SELECT true IN (true);<br>
         SELECT false IN (true);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (true)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2193,7 +2193,7 @@ SELECT false IN (true);<br>
         SELECT true IN (false);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2201,7 +2201,7 @@ SELECT true IN (false);<br>
         SELECT false IN (false);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2209,7 +2209,7 @@ SELECT false IN (false);<br>
         SELECT true IN (true, false);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (true, false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2217,7 +2217,7 @@ SELECT true IN (true, false);<br>
         SELECT false IN (true, false);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (true, false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2225,7 +2225,7 @@ SELECT false IN (true, false);<br>
         SELECT true IN (SELECT a1 FROM t6);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (SELECT a1 FROM t6)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2233,7 +2233,7 @@ SELECT true IN (SELECT a1 FROM t6);<br>
         SELECT false IN (SELECT a1 FROM t6);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (SELECT a1 FROM t6)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2241,7 +2241,7 @@ SELECT false IN (SELECT a1 FROM t6);<br>
         SELECT true IN (SELECT a1 FROM t6 LIMIT 1);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (SELECT a1 FROM t6 LIMIT 1)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2249,7 +2249,7 @@ SELECT true IN (SELECT a1 FROM t6 LIMIT
        1);<br>
         SELECT false IN (SELECT a1 FROM t6 LIMIT 1);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (SELECT a1 FROM t6 LIMIT 1)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2257,7 +2257,7 @@ SELECT false IN (SELECT a1 FROM t6 LIMIT
        1);<br>
         SELECT true IN (1, 1.2, 'true', false);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (1, 1.2, 'true', false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2265,7 +2265,7 @@ SELECT true IN (1, 1.2, 'true', false);<br>
         SELECT false IN (1, 1.2, 'true', false);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (1, 1.2, 'true', false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2276,7 +2276,7 @@ SELECT a, a IN (true) FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a IN (true)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -2287,7 +2287,7 @@ SELECT a, a IN (false) FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a IN (false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2298,7 +2298,7 @@ SELECT a, a IN (true, false) FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a IN (true, false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2309,7 +2309,7 @@ SELECT a, a IN (SELECT a1 FROM t6 LIMIT 1)
        FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a IN (SELECT a1 FROM t6 LIMIT 1)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2320,7 +2320,7 @@ SELECT a, a IN (SELECT a1 FROM t6) FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a IN (SELECT a1 FROM t6)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2331,7 +2331,7 @@ SELECT a, a IN (1, 1.2, 'true', false)
        FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a IN (1, 1.2, 'true', false)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2341,7 +2341,7 @@ SELECT a, a IN (1, 1.2, 'true', false)
        FROM t;<br>
         SELECT true BETWEEN true AND true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true BETWEEN true AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2349,7 +2349,7 @@ SELECT true BETWEEN true AND true;<br>
         SELECT false BETWEEN true AND true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false BETWEEN true AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2357,7 +2357,7 @@ SELECT false BETWEEN true AND true;<br>
         SELECT true BETWEEN false AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true BETWEEN false AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2365,7 +2365,7 @@ SELECT true BETWEEN false AND false;<br>
         SELECT false BETWEEN false AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false BETWEEN false AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2373,7 +2373,7 @@ SELECT false BETWEEN false AND false;<br>
         SELECT true BETWEEN true AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true BETWEEN true AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2381,7 +2381,7 @@ SELECT true BETWEEN true AND false;<br>
         SELECT false BETWEEN true AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false BETWEEN true AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2389,7 +2389,7 @@ SELECT false BETWEEN true AND false;<br>
         SELECT true BETWEEN false AND true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true BETWEEN false AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2397,7 +2397,7 @@ SELECT true BETWEEN false AND true;<br>
         SELECT false BETWEEN false AND true;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false BETWEEN false AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [true]<br>
        @@ -2408,7 +2408,7 @@ SELECT a, a BETWEEN true AND true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a BETWEEN true AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -2419,7 +2419,7 @@ SELECT a, a BETWEEN false AND false FROM
        t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a BETWEEN false AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2430,7 +2430,7 @@ SELECT a, a BETWEEN true AND false FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a BETWEEN true AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -2441,7 +2441,7 @@ SELECT a, a BETWEEN false AND true FROM t;<br>
          | - metadata:<br>
          |   - name: A<br>
          |     type: boolean<br>
        - |   - name: a BETWEEN false AND true<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, true]<br>
        @@ -2466,7 +2466,7 @@ SELECT true AND 2;<br>
         SELECT false AND 2;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND 2<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2489,7 +2489,7 @@ SELECT 2 AND true;<br>
         SELECT 2 AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: 2 AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -2556,7 +2556,7 @@ SELECT b, false AND b FROM t7;<br>
          | - metadata:<br>
          |   - name: B<br>
          |     type: integer<br>
        - |   - name: false AND b<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [123, false]<br>
        @@ -2581,7 +2581,7 @@ SELECT b, b AND false FROM t7;<br>
          | - metadata:<br>
          |   - name: B<br>
          |     type: integer<br>
        - |   - name: b AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [123, false]<br>
        @@ -3861,7 +3861,7 @@ SELECT a2, b, b != a2 FROM t6, t7;<br>
         SELECT true IN (0, 1, 2, 3);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (0, 1, 2, 3)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -3869,7 +3869,7 @@ SELECT true IN (0, 1, 2, 3);<br>
         SELECT false IN (0, 1, 2, 3);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (0, 1, 2, 3)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -3889,7 +3889,7 @@ SELECT a1, a1 IN (0, 1, 2, 3) FROM t6<br>
          | - metadata:<br>
          |   - name: A1<br>
          |     type: boolean<br>
        - |   - name: a1 IN (0, 1, 2, 3)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false, false]<br>
        @@ -3935,7 +3935,7 @@ SELECT true AND 2.3;<br>
         SELECT false AND 2.3;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND 2.3<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -3958,7 +3958,7 @@ SELECT 2.3 AND true;<br>
         SELECT 2.3 AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: 2.3 AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -4025,7 +4025,7 @@ SELECT c, false AND c FROM t8;<br>
          | - metadata:<br>
          |   - name: C<br>
          |     type: number<br>
        - |   - name: false AND c<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [4.56, false]<br>
        @@ -4050,7 +4050,7 @@ SELECT c, c AND false FROM t8;<br>
          | - metadata:<br>
          |   - name: C<br>
          |     type: number<br>
        - |   - name: c AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [4.56, false]<br>
        @@ -5006,7 +5006,7 @@ SELECT a2, c, c != a2 FROM t6, t8;<br>
         SELECT true IN (0.1, 1.2, 2.3, 3.4);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: true IN (0.1, 1.2, 2.3, 3.4)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5014,7 +5014,7 @@ SELECT true IN (0.1, 1.2, 2.3, 3.4);<br>
         SELECT false IN (0.1, 1.2, 2.3, 3.4);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false IN (0.1, 1.2, 2.3, 3.4)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5022,7 +5022,7 @@ SELECT false IN (0.1, 1.2, 2.3, 3.4);<br>
         SELECT a1 IN (0.1, 1.2, 2.3, 3.4) FROM t6 LIMIT 1;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: a1 IN (0.1, 1.2, 2.3, 3.4)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5030,7 +5030,7 @@ SELECT a1 IN (0.1, 1.2, 2.3, 3.4) FROM t6
        LIMIT 1;<br>
         SELECT a2 IN (0.1, 1.2, 2.3, 3.4) FROM t6 LIMIT 1;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: a2 IN (0.1, 1.2, 2.3, 3.4)<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5095,7 +5095,7 @@ SELECT true AND 'abc';<br>
         SELECT false AND 'abc';<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND 'abc'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5118,7 +5118,7 @@ SELECT 'abc' AND true;<br>
         SELECT 'abc' AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: '''abc'' AND false'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5185,7 +5185,7 @@ SELECT d, false AND d FROM t9;<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: false AND d<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['AsdF', false]<br>
        @@ -5210,7 +5210,7 @@ SELECT d, d AND false FROM t9;<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: d AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['AsdF', false]<br>
        @@ -5470,7 +5470,7 @@ SELECT true AND 'TRUE';<br>
         SELECT false AND 'TRUE';<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND 'TRUE'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5493,7 +5493,7 @@ SELECT 'TRUE' AND true;<br>
         SELECT 'TRUE' AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: '''TRUE'' AND false'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5560,7 +5560,7 @@ SELECT d, false AND d FROM t9 WHERE d =
        'TRUE';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: false AND d<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['TRUE', false]<br>
        @@ -5585,7 +5585,7 @@ SELECT d, d AND false FROM t9 WHERE d =
        'TRUE';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: d AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['TRUE', false]<br>
        @@ -5650,7 +5650,7 @@ SELECT true AND 'true';<br>
         SELECT false AND 'true';<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND 'true'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5673,7 +5673,7 @@ SELECT 'true' AND true;<br>
         SELECT 'true' AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: '''true'' AND false'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5740,7 +5740,7 @@ SELECT d, false AND d FROM t9 WHERE d =
        'true';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: false AND d<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['true', false]<br>
        @@ -5765,7 +5765,7 @@ SELECT d, d AND false FROM t9 WHERE d =
        'true';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: d AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['true', false]<br>
        @@ -5830,7 +5830,7 @@ SELECT true AND 'FALSE';<br>
         SELECT false AND 'FALSE';<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND 'FALSE'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5853,7 +5853,7 @@ SELECT 'FALSE' AND true;<br>
         SELECT 'FALSE' AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: '''FALSE'' AND false'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -5920,7 +5920,7 @@ SELECT d, false AND d FROM t9 WHERE d =
        'FALSE';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: false AND d<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['FALSE', false]<br>
        @@ -5945,7 +5945,7 @@ SELECT d, d AND false FROM t9 WHERE d =
        'FALSE';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: d AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['FALSE', false]<br>
        @@ -6010,7 +6010,7 @@ SELECT true AND 'false';<br>
         SELECT false AND 'false';<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: false AND 'false'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -6033,7 +6033,7 @@ SELECT 'false' AND true;<br>
         SELECT 'false' AND false;<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: '''false'' AND false'<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [false]<br>
        @@ -6100,7 +6100,7 @@ SELECT d, false AND d FROM t9 WHERE d =
        'false';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: false AND d<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['false', false]<br>
        @@ -6125,7 +6125,7 @@ SELECT d, d AND false FROM t9 WHERE d =
        'false';<br>
          | - metadata:<br>
          |   - name: D<br>
          |     type: string<br>
        - |   - name: d AND false<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - ['false', false]<br>
        diff --git a/test/sql/collation.result
        b/test/sql/collation.result<br>
        index 4e4c27e..bfc89e1 100644<br>
        --- a/test/sql/collation.result<br>
        +++ b/test/sql/collation.result<br>
        @@ -111,7 +111,7 @@ box.execute([[SELECT descriptor,
        upper(letter), letter FROM tu where UPPER(lette<br>
         - metadata:<br>
           - name: DESCRIPTOR<br>
             type: string<br>
        -  - name: upper(letter)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           - name: LETTER<br>
             type: string<br>
        @@ -124,7 +124,7 @@ box.execute([[SELECT descriptor,
        upper(letter COLLATE "GERMAN"), letter FROM tu<br>
         - metadata:<br>
           - name: DESCRIPTOR<br>
             type: string<br>
        -  - name: upper(letter COLLATE "GERMAN")<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           - name: LETTER<br>
             type: string<br>
        @@ -335,14 +335,14 @@ box.execute("SELECT a FROM t UNION SELECT
        c FROM t;")<br>
         box.execute("SELECT c COLLATE \"binary\" FROM t UNION SELECT a
        FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: c COLLATE "binary"<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows: []<br>
         ...<br>
         box.execute("SELECT b COLLATE \"unicode\" FROM t UNION SELECT a
        FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: b COLLATE "unicode"<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows: []<br>
         ...<br>
        @@ -1128,7 +1128,7 @@ box.execute("INSERT INTO jj VALUES
        (1,'A'), (2,'a')")<br>
         box.execute("SELECT DISTINCT trim(s2) FROM jj;")<br>
         ---<br>
         - metadata:<br>
        -  - name: trim(s2)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['A']<br>
        @@ -1140,7 +1140,7 @@ box.execute("INSERT INTO jj VALUES (3,
        'aS'), (4, 'AS');")<br>
         box.execute("SELECT DISTINCT replace(s2, 'S', 's') FROM jj;")<br>
         ---<br>
         - metadata:<br>
        -  - name: replace(s2, 'S', 's')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['A']<br>
        @@ -1149,7 +1149,7 @@ box.execute("SELECT DISTINCT replace(s2,
        'S', 's') FROM jj;")<br>
         box.execute("SELECT DISTINCT substr(s2, 1, 1) FROM jj;")<br>
         ---<br>
         - metadata:<br>
        -  - name: substr(s2, 1, 1)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['A']<br>
        diff --git a/test/sql/errinj.result b/test/sql/errinj.result<br>
        index 68c001f..f19203b 100644<br>
        --- a/test/sql/errinj.result<br>
        +++ b/test/sql/errinj.result<br>
        @@ -120,7 +120,7 @@ insert_res<br>
         select_res<br>
         ---<br>
         - metadata:<br>
        -  - name: '1'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        diff --git a/test/sql/foreign-keys.result
        b/test/sql/foreign-keys.result<br>
        index f1d9734..33689a0 100644<br>
        --- a/test/sql/foreign-keys.result<br>
        +++ b/test/sql/foreign-keys.result<br>
        @@ -357,7 +357,7 @@ box.execute('ALTER TABLE tc ADD CONSTRAINT
        fk1 FOREIGN KEY (id) REFERENCES tp(id<br>
         box.execute('SELECT row_count();')<br>
         ---<br>
         - metadata:<br>
        -  - name: row_count()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -374,7 +374,7 @@ box.execute('ALTER TABLE tc DROP CONSTRAINT
        fk1;')<br>
         box.execute('SELECT row_count();')<br>
         ---<br>
         - metadata:<br>
        -  - name: row_count()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        diff --git a/test/sql/full_metadata.result
        b/test/sql/full_metadata.result<br>
        index 5a93c41..25bac6d 100644<br>
        --- a/test/sql/full_metadata.result<br>
        +++ b/test/sql/full_metadata.result<br>
        @@ -57,7 +57,7 @@ execute("SELECT 'aSd' COLLATE
        \"unicode_ci\";")<br>
          | - metadata:<br>
          |   - type: string<br>
          |     span: '''aSd'' COLLATE "unicode_ci"'<br>
        - |     name: '''aSd'' COLLATE "unicode_ci"'<br>
        + |     name: COLUMN_1<br>
          |     collation: unicode_ci<br>
          |   rows:<br>
          |   - ['aSd']<br>
        @@ -78,7 +78,7 @@ execute("SELECT c COLLATE \"unicode\" FROM
        t;")<br>
          | - metadata:<br>
          |   - type: string<br>
          |     span: c COLLATE "unicode"<br>
        - |     name: c COLLATE "unicode"<br>
        + |     name: COLUMN_1<br>
          |     collation: unicode<br>
          |   rows:<br>
          |   - ['aSd']<br>
        @@ -165,7 +165,7 @@ execute("SELECT *, id + 1 AS x, a AS y, c ||
        'abc' FROM t;")<br>
          |     is_nullable: false<br>
          |   - type: string<br>
          |     span: c || 'abc'<br>
        - |     name: c || 'abc'<br>
        + |     name: COLUMN_1<br>
          |   rows:<br>
          |   - [1, 1, 'aSd', 2, 1, 'aSdabc']<br>
          | ...<br>
        @@ -185,8 +185,8 @@ execute("SELECT * FROM v;")<br>
          |     name: Y<br>
          |     is_nullable: false<br>
          |   - type: string<br>
        - |     span: c || 'abc'<br>
        - |     name: c || 'abc'<br>
        + |     span: COLUMN_1<br>
        + |     name: COLUMN_1<br>
          |   rows:<br>
          |   - [2, 1, 'aSdabc']<br>
          | ...<br>
        diff --git a/test/sql/func-recreate.result
        b/test/sql/func-recreate.result<br>
        index 3709df7..5fd2b79 100644<br>
        --- a/test/sql/func-recreate.result<br>
        +++ b/test/sql/func-recreate.result<br>
        @@ -48,7 +48,7 @@ test_run:cmd("setopt delimiter ''");<br>
         ch:get()<br>
         ---<br>
         - metadata:<br>
        -  - name: WAITFOR(0.2)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [0.2]<br>
        diff --git a/test/sql/gh-3199-no-mem-leaks.result
        b/test/sql/gh-3199-no-mem-leaks.result<br>
        index d859077..6ce8df4 100644<br>
        --- a/test/sql/gh-3199-no-mem-leaks.result<br>
        +++ b/test/sql/gh-3199-no-mem-leaks.result<br>
        @@ -32,7 +32,7 @@ box.execute('SELECT x, y, x + y FROM test
        ORDER BY y')<br>
             type: integer<br>
           - name: Y<br>
             type: integer<br>
        -  - name: x + y<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1, 1, 2]<br>
        @@ -49,7 +49,7 @@ box.execute('SELECT x, y, x + y FROM test
        ORDER BY y')<br>
             type: integer<br>
           - name: Y<br>
             type: integer<br>
        -  - name: x + y<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1, 1, 2]<br>
        @@ -62,7 +62,7 @@ box.execute('SELECT x, y, x + y FROM test
        ORDER BY y')<br>
             type: integer<br>
           - name: Y<br>
             type: integer<br>
        -  - name: x + y<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1, 1, 2]<br>
        @@ -75,7 +75,7 @@ box.execute('SELECT x, y, x + y FROM test
        ORDER BY y')<br>
             type: integer<br>
           - name: Y<br>
             type: integer<br>
        -  - name: x + y<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1, 1, 2]<br>
        @@ -88,7 +88,7 @@ box.execute('SELECT x, y, x + y FROM test
        ORDER BY y')<br>
             type: integer<br>
           - name: Y<br>
             type: integer<br>
        -  - name: x + y<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1, 1, 2]<br>
        @@ -115,7 +115,7 @@ box.execute('SELECT a, id + 2, b FROM test2
        WHERE b < id * 2 ORDER BY a ')<br>
         - metadata:<br>
           - name: A<br>
             type: string<br>
        -  - name: id + 2<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           - name: B<br>
             type: integer<br>
        @@ -134,7 +134,7 @@ box.execute('SELECT a, id + 2 * b, a FROM
        test2 WHERE b < id * 2 ORDER BY a ')<br>
         - metadata:<br>
           - name: A<br>
             type: string<br>
        -  - name: id + 2 * b<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           - name: A<br>
             type: string<br>
        @@ -149,7 +149,7 @@ box.execute('SELECT a, id + 2 * b, a FROM
        test2 WHERE b < id * 2 ORDER BY a ')<br>
         - metadata:<br>
           - name: A<br>
             type: string<br>
        -  - name: id + 2 * b<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           - name: A<br>
             type: string<br>
        @@ -164,7 +164,7 @@ box.execute('SELECT a, id + 2 * b, a FROM
        test2 WHERE b < id * 2 ORDER BY a ')<br>
         - metadata:<br>
           - name: A<br>
             type: string<br>
        -  - name: id + 2 * b<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           - name: A<br>
             type: string<br>
        @@ -183,7 +183,7 @@ box.execute('SELECT x, y + 3 * b, b FROM
        test2, test WHERE b = x')<br>
         - metadata:<br>
           - name: X<br>
             type: integer<br>
        -  - name: y + 3 * b<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           - name: B<br>
             type: integer<br>
        @@ -196,7 +196,7 @@ box.execute('SELECT x, y + 3 * b, b FROM
        test2, test WHERE b = x')<br>
         - metadata:<br>
           - name: X<br>
             type: integer<br>
        -  - name: y + 3 * b<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           - name: B<br>
             type: integer<br>
        @@ -209,7 +209,7 @@ box.execute('SELECT x, y + 3 * b, b FROM
        test2, test WHERE b = x')<br>
         - metadata:<br>
           - name: X<br>
             type: integer<br>
        -  - name: y + 3 * b<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           - name: B<br>
             type: integer<br>
        diff --git a/test/sql/gh-3888-values-blob-assert.result
        b/test/sql/gh-3888-values-blob-assert.result<br>
        index 0a1af28..669f2eb 100644<br>
        --- a/test/sql/gh-3888-values-blob-assert.result<br>
        +++ b/test/sql/gh-3888-values-blob-assert.result<br>
        @@ -51,7 +51,7 @@ box.execute('SELECT TheColumnName')<br>
         box.execute('VALUES(-0.5e-2)')<br>
         ---<br>
         - metadata:<br>
        -  - name: column1<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [-0.005]<br>
        @@ -59,7 +59,7 @@ box.execute('VALUES(-0.5e-2)')<br>
         box.execute('SELECT X\'507265766564\'')<br>
         ---<br>
         - metadata:<br>
        -  - name: X'507265766564'<br>
        +  - name: COLUMN_1<br>
             type: varbinary<br>
           rows:<br>
           - ['Preved']<br>
        @@ -68,7 +68,7 @@ box.execute('SELECT X\'507265766564\'')<br>
         box.execute('SELECT 3.14')<br>
         ---<br>
         - metadata:<br>
        -  - name: '3.14'<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [3.14]<br>
        @@ -76,7 +76,7 @@ box.execute('SELECT 3.14')<br>
         box.execute('SELECT X\'4D6564766564\'')<br>
         ---<br>
         - metadata:<br>
        -  - name: X'4D6564766564'<br>
        +  - name: COLUMN_1<br>
             type: varbinary<br>
           rows:<br>
           - ['Medved']<br>
        diff --git a/test/sql/gh-4697-scalar-bool-sort-cmp.result
        b/test/sql/gh-4697-scalar-bool-sort-cmp.result<br>
        index 2423cd8..6f7fbd6 100644<br>
        --- a/test/sql/gh-4697-scalar-bool-sort-cmp.result<br>
        +++ b/test/sql/gh-4697-scalar-bool-sort-cmp.result<br>
        @@ -30,7 +30,7 @@ SELECT s2, typeof(s2) FROM test ORDER BY s2;<br>
          | - metadata:<br>
          |   - name: S2<br>
          |     type: scalar<br>
        - |   - name: typeof(s2)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - [null, 'boolean']<br>
        @@ -43,7 +43,7 @@ SELECT s3, typeof(s3) FROM test ORDER BY s3;<br>
          | - metadata:<br>
          |   - name: S3<br>
          |     type: scalar<br>
        - |   - name: typeof(s3)<br>
        + |   - name: COLUMN_1<br>
          |     type: string<br>
          |   rows:<br>
          |   - [null, 'boolean']<br>
        diff --git a/test/sql/icu-upper-lower.result
        b/test/sql/icu-upper-lower.result<br>
        index f7b9dfa..3ecc07d 100644<br>
        --- a/test/sql/icu-upper-lower.result<br>
        +++ b/test/sql/icu-upper-lower.result<br>
        @@ -23,11 +23,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Zəfər, jaketini də, papağını da götür, bu
        axşam hava çox soyuq<br>
        -      olacaq. ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Zəfər, jaketini də, papağını da götür, bu
        axşam hava çox soyuq<br>
        -      olacaq. ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     zəfər, jaketini də, papağını da götür, bu axşam hava
        çox soyuq olacaq. ',<br>
        @@ -38,9 +36,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     The quick brown fox jumps over the lazy
        dog. ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     The quick brown fox jumps over the lazy
        dog. ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     the quick brown fox jumps over the lazy dog. ',
        '     THE QUICK BROWN FOX<br>
        @@ -52,9 +50,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     The quick brown fox jumps over the lazy
        dog. ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     The quick brown fox jumps over the lazy
        dog. ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     the quick brown fox jumps over the lazy dog. ',
        '     THE QUICK BROWN FOX<br>
        @@ -66,11 +64,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Բել դղյակի ձախ ժամն օֆ ազգությանը ցպահանջ
        չճշտած վնաս էր եւ<br>
        -      փառք ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Բել դղյակի ձախ ժամն օֆ ազգությանը ցպահանջ
        չճշտած վնաս էր եւ<br>
        -      փառք ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     բել դղյակի ձախ ժամն օֆ ազգությանը ցպահանջ չճշտած
        վնաս էր եւ փառք ', '     ԲԵԼ<br>
        @@ -82,11 +78,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     У Іўі худы жвавы чорт у зялёнай
        камізэльцы пабег пад’есці фаршу<br>
        -      з юшкай ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     У Іўі худы жвавы чорт у зялёнай
        камізэльцы пабег пад’есці фаршу<br>
        -      з юшкай ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     у іўі худы жвавы чорт у зялёнай камізэльцы пабег
        пад’есці фаршу з юшкай ',<br>
        @@ -98,11 +92,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Τάχιστη αλώπηξ βαφής ψημένη γη,
        δρασκελίζει υπέρ νωθρού κυνός<br>
        -      ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Τάχιστη αλώπηξ βαφής ψημένη γη,
        δρασκελίζει υπέρ νωθρού κυνός<br>
        -      ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ
        νωθρού κυνός ', '     ΤΆΧΙΣΤΗ<br>
        @@ -114,11 +106,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Chuaigh bé mhórshách le dlúthspád
        fíorfhinn trí hata mo dhea-phorcáin<br>
        -      bhig ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Chuaigh bé mhórshách le dlúthspád
        fíorfhinn trí hata mo dhea-phorcáin<br>
        -      bhig ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     chuaigh bé mhórshách le dlúthspád fíorfhinn trí hata
        mo dhea-phorcáin bhig ',<br>
        @@ -130,9 +120,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Quiere la boca exhausta vid, kiwi, piña y
        fugaz jamón ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Quiere la boca exhausta vid, kiwi, piña y
        fugaz jamón ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     quiere la boca exhausta vid, kiwi, piña y fugaz
        jamón ', '     QUIERE LA<br>
        @@ -144,9 +134,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     키스의 고유조건은 입술끼리 만나야 하고 특별한 기술은 필요치 않다 ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     키스의 고유조건은 입술끼리 만나야 하고 특별한 기술은 필요치 않다 ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     키스의 고유조건은 입술끼리 만나야 하고 특별한 기술은 필요치 않다 ', '     키스의
        고유조건은 입술끼리 만나야 하고 특별한<br>
        @@ -158,9 +148,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Glāžšķūņa rūķīši dzērumā čiepj Baha
        koncertflīģeļu vākus ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Glāžšķūņa rūķīši dzērumā čiepj Baha
        koncertflīģeļu vākus ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     glāžšķūņa rūķīši dzērumā čiepj baha koncertflīģeļu
        vākus ', '     GLĀŽŠĶŪŅA<br>
        @@ -172,11 +162,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Zwölf große Boxkämpfer jagen Viktor quer
        über den Sylter Deich<br>
        -      ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Zwölf große Boxkämpfer jagen Viktor quer
        über den Sylter Deich<br>
        -      ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     zwölf große boxkämpfer jagen viktor quer über den
        sylter deich ', '     ZWÖLF<br>
        @@ -188,9 +176,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Pchnąć w tę łódź jeża lub ośm skrzyń fig.
        ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Pchnąć w tę łódź jeża lub ośm skrzyń fig.
        ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     pchnąć w tę łódź jeża lub ośm skrzyń fig. ', '    
        PCHNĄĆ W TĘ ŁÓDŹ JEŻA<br>
        @@ -202,9 +190,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Чуєш їх, доцю, га? Кумедна ж ти, прощайся
        без ґольфів! ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Чуєш їх, доцю, га? Кумедна ж ти, прощайся
        без ґольфів! ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     чуєш їх, доцю, га? кумедна ж ти, прощайся без
        ґольфів! ', '     ЧУЄШ ЇХ,<br>
        @@ -216,9 +204,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Příliš žluťoučký kůň úpěl ďábelské ódy ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Příliš žluťoučký kůň úpěl ďábelské ódy ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     příliš žluťoučký kůň úpěl ďábelské ódy ', '    
        PŘÍLIŠ ŽLUŤOUČKÝ KŮŇ ÚPĚL<br>
        @@ -230,11 +218,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     Laŭ Ludoviko Zamenhof bongustas freŝa
        ĉeĥa manĝaĵo kun spicoj<br>
        -      ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     Laŭ Ludoviko Zamenhof bongustas freŝa
        ĉeĥa manĝaĵo kun spicoj<br>
        -      ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     laŭ ludoviko zamenhof bongustas freŝa ĉeĥa manĝaĵo
        kun spicoj ', '     LAŬ<br>
        @@ -246,9 +232,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: lower('     いろはにほへと ちりぬるを わかよたれそ つねならむ うゐのおくやま けふこえて
        あさきゆめみし ゑひもせす ')<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: upper('     いろはにほへと ちりぬるを わかよたれそ つねならむ うゐのおくやま けふこえて
        あさきゆめみし ゑひもせす ')<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     いろはにほへと ちりぬるを わかよたれそ つねならむ うゐのおくやま けふこえて あさきゆめみし
        ゑひもせす ', '     いろはにほへと<br>
        @@ -260,9 +246,9 @@ upper_lower_test([[<br>
         ]]);<br>
         ---<br>
         - metadata:<br>
        -  - name: 'lower(''     Pijamalı hasta yağız şoföre çabucak
        güvendi. EXTRA: İ '')'<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: 'upper(''     Pijamalı hasta yağız şoföre çabucak
        güvendi. EXTRA: İ '')'<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['     pijamalı hasta yağız şoföre çabucak güvendi. extra:
        i̇ ', '     PIJAMALI<br>
        diff --git a/test/sql/integer-overflow.result
        b/test/sql/integer-overflow.result<br>
        index 6269cb5..a56fb24 100644<br>
        --- a/test/sql/integer-overflow.result<br>
        +++ b/test/sql/integer-overflow.result<br>
        @@ -19,7 +19,7 @@ box.execute('SELECT (2147483647 * 2147483647 *
        2147483647);')<br>
         box.execute('SELECT (-9223372036854775808 / -1);')<br>
         ---<br>
         - metadata:<br>
        -  - name: (-9223372036854775808 / -1)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [9223372036854775808]<br>
        @@ -32,7 +32,7 @@ box.execute('SELECT (-9223372036854775808 -
        1);')<br>
         box.execute('SELECT (9223372036854775807 + 1);')<br>
         ---<br>
         - metadata:<br>
        -  - name: (9223372036854775807 + 1)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [9223372036854775808]<br>
        @@ -50,7 +50,7 @@ box.execute('SELECT 18446744073709551615 *
        2;')<br>
         box.execute('SELECT (-9223372036854775807 * (-2));')<br>
         ---<br>
         - metadata:<br>
        -  - name: (-9223372036854775807 * (-2))<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [18446744073709551614]<br>
        @@ -60,7 +60,7 @@ box.execute('SELECT (-9223372036854775807 *
        (-2));')<br>
         box.execute('SELECT 9223372036854775808;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '9223372036854775808'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [9223372036854775808]<br>
        @@ -74,7 +74,7 @@ box.execute('SELECT -9223372036854775809;')<br>
         box.execute('SELECT 9223372036854775808 - 1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: 9223372036854775808 - 1<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [9223372036854775807]<br>
        @@ -82,7 +82,7 @@ box.execute('SELECT 9223372036854775808 - 1;')<br>
         box.execute('SELECT 18446744073709551615;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '18446744073709551615'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [18446744073709551615]<br>
        @@ -98,7 +98,7 @@ box.execute('SELECT 18446744073709551616;')<br>
         box.execute('SELECT CAST(\'9223372036854775808\' AS INTEGER);')<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST('9223372036854775808' AS INTEGER)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [9223372036854775808]<br>
        diff --git a/test/sql/iproto.result b/test/sql/iproto.result<br>
        index 44ba499..ee1047f 100644<br>
        --- a/test/sql/iproto.result<br>
        +++ b/test/sql/iproto.result<br>
        @@ -372,11 +372,11 @@ parameters[3] = 33<br>
         cn:execute('select $2, $1, $3', parameters)<br>
         ---<br>
         - metadata:<br>
        -  - name: $2<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: $1<br>
        +  - name: COLUMN_2<br>
             type: integer<br>
        -  - name: $3<br>
        +  - name: COLUMN_3<br>
             type: integer<br>
           rows:<br>
           - [22, 11, 33]<br>
        @@ -736,7 +736,7 @@ res.metadata<br>
         cn:execute("SELECT zeroblob(1);")<br>
         ---<br>
         - metadata:<br>
        -  - name: zeroblob(1)<br>
        +  - name: COLUMN_1<br>
             type: varbinary<br>
           rows:<br>
           - ["\0"]<br>
        @@ -749,7 +749,7 @@ res = cn:execute("SELECT randomblob(1);")<br>
         ...<br>
         res.metadata<br>
         ---<br>
        -- - name: randomblob(1)<br>
        +- - name: COLUMN_1<br>
             type: varbinary<br>
         ...<br>
         -- Type set during compilation stage, and since min/max are
        accept<br>
        @@ -759,7 +759,7 @@ res.metadata<br>
         cn:execute("SELECT LEAST(1, 2, 3);")<br>
         ---<br>
         - metadata:<br>
        -  - name: LEAST(1, 2, 3)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [1]<br>
        @@ -767,7 +767,7 @@ cn:execute("SELECT LEAST(1, 2, 3);")<br>
         cn:execute("SELECT GREATEST(1, 2, 3);")<br>
         ---<br>
         - metadata:<br>
        -  - name: GREATEST(1, 2, 3)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [3]<br>
        @@ -803,7 +803,7 @@ s = box.prepare([[ SELECT ?; ]])<br>
         s:execute({42})<br>
         ---<br>
         - metadata:<br>
        -  - name: '?'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [42]<br>
        @@ -811,7 +811,7 @@ s:execute({42})<br>
         box.execute('SELECT 1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '1'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        diff --git a/test/sql/max-on-index.result
        b/test/sql/max-on-index.result<br>
        index 1cd488f..a90f309 100644<br>
        --- a/test/sql/max-on-index.result<br>
        +++ b/test/sql/max-on-index.result<br>
        @@ -48,7 +48,7 @@ box.execute("INSERT INTO test2 VALUES(1, 2)");<br>
         box.execute("SELECT MAX(f1) FROM test1")<br>
         ---<br>
         - metadata:<br>
        -  - name: MAX(f1)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [4]<br>
        @@ -56,7 +56,7 @@ box.execute("SELECT MAX(f1) FROM test1")<br>
         box.execute("SELECT MAX(f2) FROM test1")<br>
         ---<br>
         - metadata:<br>
        -  - name: MAX(f2)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [3]<br>
        @@ -64,7 +64,7 @@ box.execute("SELECT MAX(f2) FROM test1")<br>
         box.execute("SELECT MAX(f1) FROM test2")<br>
         ---<br>
         - metadata:<br>
        -  - name: MAX(f1)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [1]<br>
        diff --git a/test/sql/misc.result b/test/sql/misc.result<br>
        index 0190a58..6af11bf 100644<br>
        --- a/test/sql/misc.result<br>
        +++ b/test/sql/misc.result<br>
        @@ -11,7 +11,7 @@ _ =
        box.space._session_settings:update('sql_default_engine', {{'=',
        2, engine}})<br>
         box.execute('select 1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '1'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -78,7 +78,7 @@ box.execute('CREATE TABLE test (id INTEGER
        PRIMARY KEY, b TEXT CONSTRAINT c1 COL<br>
         box.execute('SELECT 1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '1'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -86,7 +86,7 @@ box.execute('SELECT 1;')<br>
         box.execute('SELECT 1.5;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '1.5'<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [1.5]<br>
        @@ -94,7 +94,7 @@ box.execute('SELECT 1.5;')<br>
         box.execute('SELECT 1.0;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '1.0'<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [1]<br>
        @@ -102,7 +102,7 @@ box.execute('SELECT 1.0;')<br>
         box.execute('SELECT \'abc\';')<br>
         ---<br>
         - metadata:<br>
        -  - name: '''abc'''<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['abc']<br>
        @@ -110,7 +110,7 @@ box.execute('SELECT \'abc\';')<br>
         box.execute('SELECT X\'4D6564766564\'')<br>
         ---<br>
         - metadata:<br>
        -  - name: X'4D6564766564'<br>
        +  - name: COLUMN_1<br>
             type: varbinary<br>
           rows:<br>
           - ['Medved']<br>
        diff --git a/test/sql/persistency.result
        b/test/sql/persistency.result<br>
        index 6d14d4c..95dde57 100644<br>
        --- a/test/sql/persistency.result<br>
        +++ b/test/sql/persistency.result<br>
        @@ -41,9 +41,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -57,9 +57,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar LIMIT 2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -72,9 +72,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo=2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['bar', 2, 42, 'awesome']<br>
        @@ -86,9 +86,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo>2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foobar', 1000, 42, 'awesome']<br>
        @@ -100,9 +100,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo>=2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['bar', 2, 42, 'awesome']<br>
        @@ -115,9 +115,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo=10000")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows: []<br>
         ...<br>
        @@ -128,9 +128,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo>10000")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows: []<br>
         ...<br>
        @@ -141,9 +141,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -155,9 +155,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<2.001")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -170,9 +170,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<=2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -185,9 +185,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<100")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -200,9 +200,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE bar='foo'")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -210,7 +210,7 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE bar='foo'")<br>
         box.execute("SELECT count(*) FROM foobar")<br>
         ---<br>
         - metadata:<br>
        -  - name: count(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [3]<br>
        @@ -218,7 +218,7 @@ box.execute("SELECT count(*) FROM foobar")<br>
         box.execute("SELECT count(*) FROM foobar WHERE bar='foo'")<br>
         ---<br>
         - metadata:<br>
        -  - name: count(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -230,9 +230,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar ORDER BY bar")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['bar', 2, 42, 'awesome']<br>
        @@ -246,9 +246,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar ORDER BY bar DESC")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foobar', 1000, 42, 'awesome']<br>
        @@ -263,7 +263,7 @@ box.execute("REPLACE INTO foobar VALUES (1,
        'cacodaemon')")<br>
         box.execute("SELECT COUNT(*) FROM foobar WHERE foo=1")<br>
         ---<br>
         - metadata:<br>
        -  - name: COUNT(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -271,7 +271,7 @@ box.execute("SELECT COUNT(*) FROM foobar
        WHERE foo=1")<br>
         box.execute("SELECT COUNT(*) FROM foobar WHERE
        bar='cacodaemon'")<br>
         ---<br>
         - metadata:<br>
        -  - name: COUNT(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -283,7 +283,7 @@ box.execute("DELETE FROM foobar WHERE
        bar='cacodaemon'")<br>
         box.execute("SELECT COUNT(*) FROM foobar WHERE
        bar='cacodaemon'")<br>
         ---<br>
         - metadata:<br>
        -  - name: COUNT(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        diff --git a/test/sql/prepared.result b/test/sql/prepared.result<br>
        index 666f6e1..0db2cc0 100644<br>
        --- a/test/sql/prepared.result<br>
        +++ b/test/sql/prepared.result<br>
        @@ -425,13 +425,13 @@ s = prepare("SELECT count(*), count(a -
        3), max(b), abs(id) FROM test WHERE b =<br>
         execute(s.stmt_id)<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: count(*)<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
        - |   - name: count(a - 3)<br>
        + |   - name: COLUMN_2<br>
          |     type: integer<br>
        - |   - name: max(b)<br>
        + |   - name: COLUMN_3<br>
          |     type: scalar<br>
        - |   - name: abs(id)<br>
        + |   - name: COLUMN_4<br>
          |     type: number<br>
          |   rows:<br>
          |   - [1, 1, '3', 1]<br>
        @@ -439,13 +439,13 @@ execute(s.stmt_id)<br>
         execute(s.stmt_id)<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: count(*)<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
        - |   - name: count(a - 3)<br>
        + |   - name: COLUMN_2<br>
          |     type: integer<br>
        - |   - name: max(b)<br>
        + |   - name: COLUMN_3<br>
          |     type: scalar<br>
        - |   - name: abs(id)<br>
        + |   - name: COLUMN_4<br>
          |     type: number<br>
          |   rows:<br>
          |   - [1, 1, '3', 1]<br>
        @@ -480,7 +480,7 @@ res = execute(s.stmt_id)<br>
          | ...<br>
         res.metadata<br>
          | ---<br>
        - | - - name: group_concat(TRIM(TRAILING FROM t),x'0a')<br>
        + | - - name: COLUMN_13<br>
          |     type: string<br>
          | ...<br>
         unprepare(s.stmt_id)<br>
        @@ -838,11 +838,11 @@ s = prepare('SELECT :a, :b, :c');<br>
         execute(s.stmt_id, {{[':a'] = 1}, {[':b'] = 2}, {[':c'] = 3}});<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: :a<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
        - |   - name: :b<br>
        + |   - name: COLUMN_2<br>
          |     type: integer<br>
        - |   - name: :c<br>
        + |   - name: COLUMN_3<br>
          |     type: integer<br>
          |   rows:<br>
          |   - [1, 2, 3]<br>
        @@ -850,11 +850,11 @@ execute(s.stmt_id, {{[':a'] = 1}, {[':b']
        = 2}, {[':c'] = 3}});<br>
         execute(s.stmt_id, {{[':a'] = 1}, {[':b'] = 2}});<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: :a<br>
        + |   - name: COLUMN_1<br>
          |     type: integer<br>
        - |   - name: :b<br>
        + |   - name: COLUMN_2<br>
          |     type: integer<br>
        - |   - name: :c<br>
        + |   - name: COLUMN_3<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [1, 2, null]<br>
        @@ -862,11 +862,11 @@ execute(s.stmt_id, {{[':a'] = 1}, {[':b']
        = 2}});<br>
         execute(s.stmt_id);<br>
          | ---<br>
          | - metadata:<br>
        - |   - name: :a<br>
        + |   - name: COLUMN_1<br>
          |     type: boolean<br>
        - |   - name: :b<br>
        + |   - name: COLUMN_2<br>
          |     type: boolean<br>
        - |   - name: :c<br>
        + |   - name: COLUMN_3<br>
          |     type: boolean<br>
          |   rows:<br>
          |   - [null, null, null]<br>
        diff --git a/test/sql/row-count.result
        b/test/sql/row-count.result<br>
        index 02acd79..7591d16 100644<br>
        --- a/test/sql/row-count.result<br>
        +++ b/test/sql/row-count.result<br>
        @@ -16,7 +16,7 @@ box.execute("CREATE TABLE t1 (s1 VARCHAR(10)
        PRIMARY KEY);")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -24,7 +24,7 @@ box.execute("SELECT ROW_COUNT();")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        @@ -36,7 +36,7 @@ box.execute("CREATE TABLE t2 (s1 VARCHAR(10)
        PRIMARY KEY, s2 VARCHAR(10) REFEREN<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -52,7 +52,7 @@ box.execute("INSERT INTO t3 VALUES (0, 0,
        0);")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -64,7 +64,7 @@ box.execute("CREATE TRIGGER x AFTER DELETE ON
        t1 FOR EACH ROW BEGIN UPDATE t3 SE<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -76,7 +76,7 @@ box.execute("INSERT INTO t1 VALUES ('a');")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -88,7 +88,7 @@ box.execute("INSERT INTO t2 VALUES
        ('a','a');")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -100,7 +100,7 @@ box.execute("INSERT INTO t1 VALUES ('b'),
        ('c'), ('d');")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [3]<br>
        @@ -113,7 +113,7 @@ box.execute("REPLACE INTO t2 VALUES('a',
        'c');")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [2]<br>
        @@ -125,7 +125,7 @@ box.execute("DELETE FROM t1;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [4]<br>
        @@ -141,7 +141,7 @@ box.execute("TRUNCATE TABLE t3;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        @@ -157,7 +157,7 @@ box.execute("UPDATE t3 SET i2 = 666;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [3]<br>
        @@ -172,7 +172,7 @@ box.execute("DELETE FROM t3 WHERE 0 = 0;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [3]<br>
        @@ -188,7 +188,7 @@ box.execute("DELETE FROM t3")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [3]<br>
        @@ -222,7 +222,7 @@ box.execute("DELETE FROM tt1 WHERE id = 2;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -252,7 +252,7 @@ box.execute("START TRANSACTION;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        @@ -264,7 +264,7 @@ box.execute("COMMIT;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        @@ -277,7 +277,7 @@ box.execute("COMMIT;")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        @@ -286,7 +286,7 @@ box.execute("SELECT ROW_COUNT();")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        @@ -308,7 +308,7 @@ box.execute("EXPLAIN QUERY PLAN INSERT INTO
        t1 VALUES ('b'), ('c'), ('d');")<br>
         box.execute("SELECT ROW_COUNT();")<br>
         ---<br>
         - metadata:<br>
        -  - name: ROW_COUNT()<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        diff --git a/test/sql/transition.result
        b/test/sql/transition.result<br>
        index c14055b..8680e3c 100644<br>
        --- a/test/sql/transition.result<br>
        +++ b/test/sql/transition.result<br>
        @@ -38,9 +38,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -54,9 +54,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar LIMIT 2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -69,9 +69,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo=2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['bar', 2, 42, 'awesome']<br>
        @@ -83,9 +83,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo>2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foobar', 1000, 42, 'awesome']<br>
        @@ -97,9 +97,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo>=2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['bar', 2, 42, 'awesome']<br>
        @@ -112,9 +112,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo=10000")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows: []<br>
         ...<br>
        @@ -125,9 +125,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo>10000")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows: []<br>
         ...<br>
        @@ -138,9 +138,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -152,9 +152,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<2.001")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -167,9 +167,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<=2")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -182,9 +182,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE foo<100")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -197,9 +197,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE bar='foo'")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foo', 1, 42, 'awesome']<br>
        @@ -207,7 +207,7 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar WHERE bar='foo'")<br>
         box.execute("SELECT count(*) FROM foobar")<br>
         ---<br>
         - metadata:<br>
        -  - name: count(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [3]<br>
        @@ -215,7 +215,7 @@ box.execute("SELECT count(*) FROM foobar")<br>
         box.execute("SELECT count(*) FROM foobar WHERE bar='foo'")<br>
         ---<br>
         - metadata:<br>
        -  - name: count(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -227,9 +227,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar ORDER BY bar")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['bar', 2, 42, 'awesome']<br>
        @@ -243,9 +243,9 @@ box.execute("SELECT bar, foo, 42, 'awesome'
        FROM foobar ORDER BY bar DESC")<br>
             type: string<br>
           - name: FOO<br>
             type: integer<br>
        -  - name: '42'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
        -  - name: '''awesome'''<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['foobar', 1000, 42, 'awesome']<br>
        @@ -260,7 +260,7 @@ box.execute("REPLACE INTO foobar VALUES (1,
        'cacodaemon')")<br>
         box.execute("SELECT COUNT(*) FROM foobar WHERE foo=1")<br>
         ---<br>
         - metadata:<br>
        -  - name: COUNT(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -268,7 +268,7 @@ box.execute("SELECT COUNT(*) FROM foobar
        WHERE foo=1")<br>
         box.execute("SELECT COUNT(*) FROM foobar WHERE
        bar='cacodaemon'")<br>
         ---<br>
         - metadata:<br>
        -  - name: COUNT(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -280,7 +280,7 @@ box.execute("DELETE FROM foobar WHERE
        bar='cacodaemon'")<br>
         box.execute("SELECT COUNT(*) FROM foobar WHERE
        bar='cacodaemon'")<br>
         ---<br>
         - metadata:<br>
        -  - name: COUNT(*)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        diff --git a/test/sql/types.result b/test/sql/types.result<br>
        index 54aff46..8204b22 100644<br>
        --- a/test/sql/types.result<br>
        +++ b/test/sql/types.result<br>
        @@ -54,8 +54,8 @@ box.execute("CREATE VIEW v1 AS SELECT b + a, b
        - a FROM t1;")<br>
         ...<br>
         box.space.V1:format()<br>
         ---<br>
        -- [{'type': 'number', 'nullable_action': 'none', 'name': 'b +
        a', 'is_nullable': true},<br>
        -  {'type': 'number', 'nullable_action': 'none', 'name': 'b -
        a', 'is_nullable': true}]<br>
        +- [{'type': 'number', 'nullable_action': 'none', 'name':
        'COLUMN_1', 'is_nullable': true},<br>
        +  {'type': 'number', 'nullable_action': 'none', 'name':
        'COLUMN_2', 'is_nullable': true}]<br>
         ...<br>
         -- gh-2494: index's part also features correct declared type.<br>
         --<br>
        @@ -197,7 +197,7 @@ box.execute("SELECT randomblob(5) || 'x';")<br>
         box.execute("VALUES (TYPEOF(randomblob(5) || zeroblob(5)));")<br>
         ---<br>
         - metadata:<br>
        -  - name: column1<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['varbinary']<br>
        @@ -230,7 +230,7 @@ box.execute("SELECT * FROM t1 WHERE 'blob'
        LIKE x'0000';")<br>
         box.execute("SELECT s LIKE NULL FROM t1;")<br>
         ---<br>
         - metadata:<br>
        -  - name: s LIKE NULL<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [null]<br>
        @@ -256,7 +256,7 @@ box.execute("SELECT * FROM t1 WHERE 'int'
        LIKE 4;")<br>
         box.execute("SELECT NULL LIKE s FROM t1;")<br>
         ---<br>
         - metadata:<br>
        -  - name: NULL LIKE s<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [null]<br>
        @@ -295,7 +295,7 @@ box.space.T1:drop()<br>
         box.execute('SELECT 1 + 1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: 1 + 1<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [2]<br>
        @@ -303,7 +303,7 @@ box.execute('SELECT 1 + 1;')<br>
         box.execute('SELECT 1 + 1.1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: 1 + 1.1<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [2.1]<br>
        @@ -311,7 +311,7 @@ box.execute('SELECT 1 + 1.1;')<br>
         box.execute('SELECT \'9223372036854\' + 1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: '''9223372036854'' + 1'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [9223372036855]<br>
        @@ -320,7 +320,7 @@ box.execute('SELECT \'9223372036854\' + 1;')<br>
         box.execute('SELECT ?', {true})<br>
         ---<br>
         - metadata:<br>
        -  - name: '?'<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -481,7 +481,7 @@ s:drop()<br>
         box.execute("SELECT 18446744073709551615 >
        18446744073709551614;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 > 18446744073709551614<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -489,7 +489,7 @@ box.execute("SELECT 18446744073709551615
        > 18446744073709551614;")<br>
         box.execute("SELECT 18446744073709551615 >
        -9223372036854775808;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 > -9223372036854775808<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -497,7 +497,7 @@ box.execute("SELECT 18446744073709551615
        > -9223372036854775808;")<br>
         box.execute("SELECT -1 < 18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: -1 < 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -505,7 +505,7 @@ box.execute("SELECT -1 <
        18446744073709551615;")<br>
         box.execute("SELECT 1.5 < 18446744073709551615")<br>
         ---<br>
         - metadata:<br>
        -  - name: 1.5 < 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -513,7 +513,7 @@ box.execute("SELECT 1.5 <
        18446744073709551615")<br>
         box.execute("SELECT 1.5 > 18446744073709551615")<br>
         ---<br>
         - metadata:<br>
        -  - name: 1.5 > 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [false]<br>
        @@ -521,7 +521,7 @@ box.execute("SELECT 1.5 >
        18446744073709551615")<br>
         box.execute("SELECT 18446744073709551615 > 1.5")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 > 1.5<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -529,7 +529,7 @@ box.execute("SELECT 18446744073709551615
        > 1.5")<br>
         box.execute("SELECT 18446744073709551615 < 1.5")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 < 1.5<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [false]<br>
        @@ -537,7 +537,7 @@ box.execute("SELECT 18446744073709551615
        < 1.5")<br>
         box.execute("SELECT 18446744073709551615 =
        18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 = 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -545,7 +545,7 @@ box.execute("SELECT 18446744073709551615 =
        18446744073709551615;")<br>
         box.execute("SELECT 18446744073709551615 >
        -9223372036854775808;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 > -9223372036854775808<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -553,7 +553,7 @@ box.execute("SELECT 18446744073709551615
        > -9223372036854775808;")<br>
         box.execute("SELECT 18446744073709551615 <
        -9223372036854775808;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 < -9223372036854775808<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [false]<br>
        @@ -561,7 +561,7 @@ box.execute("SELECT 18446744073709551615
        < -9223372036854775808;")<br>
         box.execute("SELECT -1 < 18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: -1 < 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -569,7 +569,7 @@ box.execute("SELECT -1 <
        18446744073709551615;")<br>
         box.execute("SELECT -1 > 18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: -1 > 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [false]<br>
        @@ -577,7 +577,7 @@ box.execute("SELECT -1 >
        18446744073709551615;")<br>
         box.execute("SELECT 18446744073709551610 -
        18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551610 - 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [-5]<br>
        @@ -585,7 +585,7 @@ box.execute("SELECT 18446744073709551610 -
        18446744073709551615;")<br>
         box.execute("SELECT 18446744073709551615 = null;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 = null<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [null]<br>
        @@ -593,7 +593,7 @@ box.execute("SELECT 18446744073709551615 =
        null;")<br>
         box.execute("SELECT 18446744073709551615 =
        18446744073709551615.0;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 = 18446744073709551615.0<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [false]<br>
        @@ -601,7 +601,7 @@ box.execute("SELECT 18446744073709551615 =
        18446744073709551615.0;")<br>
         box.execute("SELECT 18446744073709551615.0 >
        18446744073709551615")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615.0 > 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -609,7 +609,7 @@ box.execute("SELECT 18446744073709551615.0
        > 18446744073709551615")<br>
         box.execute("SELECT 18446744073709551615 IN
        ('18446744073709551615', 18446744073709551615.0)")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 IN ('18446744073709551615',
        18446744073709551615.0)<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -617,7 +617,7 @@ box.execute("SELECT 18446744073709551615 IN
        ('18446744073709551615', 18446744073<br>
         box.execute("SELECT 1 LIMIT 18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: '1'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -625,7 +625,7 @@ box.execute("SELECT 1 LIMIT
        18446744073709551615;")<br>
         box.execute("SELECT 1 LIMIT 1 OFFSET 18446744073709551614;")<br>
         ---<br>
         - metadata:<br>
        -  - name: '1'<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows: []<br>
         ...<br>
        @@ -637,7 +637,7 @@ box.execute("SELECT CAST('18446744073' ||
        '709551616' AS INTEGER);")<br>
         box.execute("SELECT CAST('18446744073' || '709551615' AS
        INTEGER);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST('18446744073' || '709551615' AS INTEGER)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [18446744073709551615]<br>
        @@ -645,7 +645,7 @@ box.execute("SELECT CAST('18446744073' ||
        '709551615' AS INTEGER);")<br>
         box.execute("SELECT 18446744073709551610 + 5;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551610 + 5<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [18446744073709551615]<br>
        @@ -653,7 +653,7 @@ box.execute("SELECT 18446744073709551610 +
        5;")<br>
         box.execute("SELECT 18446744073709551615 * 1;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 * 1<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [18446744073709551615]<br>
        @@ -661,7 +661,7 @@ box.execute("SELECT 18446744073709551615 *
        1;")<br>
         box.execute("SELECT 1 / 18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 1 / 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [0]<br>
        @@ -669,7 +669,7 @@ box.execute("SELECT 1 /
        18446744073709551615;")<br>
         box.execute("SELECT 18446744073709551615 /
        18446744073709551615;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 / 18446744073709551615<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -677,7 +677,7 @@ box.execute("SELECT 18446744073709551615 /
        18446744073709551615;")<br>
         box.execute("SELECT 18446744073709551615 /
        -9223372036854775808;")<br>
         ---<br>
         - metadata:<br>
        -  - name: 18446744073709551615 / -9223372036854775808<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [-1]<br>
        @@ -771,7 +771,7 @@ box.execute("INSERT INTO t VALUES (2, -1);")<br>
         box.execute("SELECT sum(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: sum(i)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [18446744073709551613]<br>
        @@ -779,7 +779,7 @@ box.execute("SELECT sum(i) FROM t;")<br>
         box.execute("SELECT avg(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: avg(i)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [6148914691236516864]<br>
        @@ -787,7 +787,7 @@ box.execute("SELECT avg(i) FROM t;")<br>
         box.execute("SELECT total(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: total(i)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [1.844674407371e+19]<br>
        @@ -795,7 +795,7 @@ box.execute("SELECT total(i) FROM t;")<br>
         box.execute("SELECT min(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: min(i)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [-1]<br>
        @@ -803,7 +803,7 @@ box.execute("SELECT min(i) FROM t;")<br>
         box.execute("SELECT max(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: max(i)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [18446744073709551613]<br>
        @@ -811,7 +811,7 @@ box.execute("SELECT max(i) FROM t;")<br>
         box.execute("SELECT count(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: count(i)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [3]<br>
        @@ -819,7 +819,7 @@ box.execute("SELECT count(i) FROM t;")<br>
         box.execute("SELECT group_concat(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: group_concat(i)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['1,-1,18446744073709551613']<br>
        @@ -831,7 +831,7 @@ box.execute("DELETE FROM t WHERE i <
        18446744073709551613;")<br>
         box.execute("SELECT lower(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: lower(i)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['18446744073709551613']<br>
        @@ -839,7 +839,7 @@ box.execute("SELECT lower(i) FROM t;")<br>
         box.execute("SELECT upper(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: upper(i)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['18446744073709551613']<br>
        @@ -847,7 +847,7 @@ box.execute("SELECT upper(i) FROM t;")<br>
         box.execute("SELECT abs(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: abs(i)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [18446744073709551613]<br>
        @@ -855,7 +855,7 @@ box.execute("SELECT abs(i) FROM t;")<br>
         box.execute("SELECT typeof(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: typeof(i)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['integer']<br>
        @@ -863,7 +863,7 @@ box.execute("SELECT typeof(i) FROM t;")<br>
         box.execute("SELECT quote(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: quote(i)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - [18446744073709551613]<br>
        @@ -871,7 +871,7 @@ box.execute("SELECT quote(i) FROM t;")<br>
         box.execute("SELECT LEAST(-1, i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: LEAST(-1, i)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [-1]<br>
        @@ -879,7 +879,7 @@ box.execute("SELECT LEAST(-1, i) FROM t;")<br>
         box.execute("SELECT quote(i) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: quote(i)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - [18446744073709551613]<br>
        @@ -1012,7 +1012,7 @@ box.space.T1:drop()<br>
         box.execute("SELECT CAST(18446744073709551615 AS NUMBER);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(18446744073709551615 AS NUMBER)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [18446744073709551615]<br>
        @@ -1020,7 +1020,7 @@ box.execute("SELECT
        CAST(18446744073709551615 AS NUMBER);")<br>
         box.execute("SELECT CAST(18446744073709551615 AS TEXT);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(18446744073709551615 AS TEXT)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['18446744073709551615']<br>
        @@ -1028,7 +1028,7 @@ box.execute("SELECT
        CAST(18446744073709551615 AS TEXT);")<br>
         box.execute("SELECT CAST(18446744073709551615 AS SCALAR);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(18446744073709551615 AS SCALAR)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [18446744073709551615]<br>
        @@ -1036,7 +1036,7 @@ box.execute("SELECT
        CAST(18446744073709551615 AS SCALAR);")<br>
         box.execute("SELECT CAST(18446744073709551615 AS BOOLEAN);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(18446744073709551615 AS BOOLEAN)<br>
        +  - name: COLUMN_1<br>
             type: boolean<br>
           rows:<br>
           - [true]<br>
        @@ -1044,7 +1044,7 @@ box.execute("SELECT
        CAST(18446744073709551615 AS BOOLEAN);")<br>
         box.execute("SELECT CAST('18446744073709551615' AS INTEGER);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST('18446744073709551615' AS INTEGER)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [18446744073709551615]<br>
        @@ -1077,7 +1077,7 @@ box.execute("SELECT id FROM t1;")<br>
         box.execute("SELECT CAST(123 AS UNSIGNED);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(123 AS UNSIGNED)<br>
        +  - name: COLUMN_1<br>
             type: unsigned<br>
           rows:<br>
           - [123]<br>
        @@ -1090,7 +1090,7 @@ box.execute("SELECT CAST(-123 AS
        UNSIGNED);")<br>
         box.execute("SELECT CAST(1.5 AS UNSIGNED);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(1.5 AS UNSIGNED)<br>
        +  - name: COLUMN_1<br>
             type: unsigned<br>
           rows:<br>
           - [1]<br>
        @@ -1098,7 +1098,7 @@ box.execute("SELECT CAST(1.5 AS
        UNSIGNED);")<br>
         box.execute("SELECT CAST(-1.5 AS UNSIGNED);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(-1.5 AS UNSIGNED)<br>
        +  - name: COLUMN_1<br>
             type: unsigned<br>
           rows:<br>
           - [-1]<br>
        @@ -1106,7 +1106,7 @@ box.execute("SELECT CAST(-1.5 AS
        UNSIGNED);")<br>
         box.execute("SELECT CAST(true AS UNSIGNED);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(true AS UNSIGNED)<br>
        +  - name: COLUMN_1<br>
             type: unsigned<br>
           rows:<br>
           - [1]<br>
        @@ -1114,7 +1114,7 @@ box.execute("SELECT CAST(true AS
        UNSIGNED);")<br>
         box.execute("SELECT CAST('123' AS UNSIGNED);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST('123' AS UNSIGNED)<br>
        +  - name: COLUMN_1<br>
             type: unsigned<br>
           rows:<br>
           - [123]<br>
        @@ -1146,7 +1146,7 @@ box.space.T:drop()<br>
         box.execute("SELECT CASE 1 WHEN 1 THEN x'0000000000' WHEN 2
        THEN 'str' END")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 1 WHEN 1 THEN x'0000000000' WHEN 2 THEN 'str'
        END<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - ["\0\0\0\0\0"]<br>
        @@ -1154,7 +1154,7 @@ box.execute("SELECT CASE 1 WHEN 1 THEN
        x'0000000000' WHEN 2 THEN 'str' END")<br>
         box.execute("SELECT CASE 1 WHEN 1 THEN 666 WHEN 2 THEN 123
        END")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 1 WHEN 1 THEN 666 WHEN 2 THEN 123 END<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [666]<br>
        @@ -1162,7 +1162,7 @@ box.execute("SELECT CASE 1 WHEN 1 THEN 666
        WHEN 2 THEN 123 END")<br>
         box.execute("SELECT CASE 1 WHEN 1 THEN 666 WHEN 2 THEN 123 ELSE
        321 END")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 1 WHEN 1 THEN 666 WHEN 2 THEN 123 ELSE 321 END<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [666]<br>
        @@ -1170,7 +1170,7 @@ box.execute("SELECT CASE 1 WHEN 1 THEN 666
        WHEN 2 THEN 123 ELSE 321 END")<br>
         box.execute("SELECT CASE 1 WHEN 1 THEN 666 WHEN 2 THEN 123 ELSE
        'asd' END")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 1 WHEN 1 THEN 666 WHEN 2 THEN 123 ELSE 'asd' END<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [666]<br>
        @@ -1178,8 +1178,7 @@ box.execute("SELECT CASE 1 WHEN 1 THEN 666
        WHEN 2 THEN 123 ELSE 'asd' END")<br>
         box.execute("SELECT CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2
        WHEN 'c' THEN 3 WHEN 'd' THEN 4 WHEN 'e' THEN 5 WHEN 'f' THEN 6
        END;")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2 WHEN 'c'
        THEN 3 WHEN 'd' THEN 4<br>
        -      WHEN 'e' THEN 5 WHEN 'f' THEN 6 END<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -1187,8 +1186,7 @@ box.execute("SELECT CASE 'a' WHEN 'a' THEN
        1 WHEN 'b' THEN 2 WHEN 'c' THEN 3 WHE<br>
         box.execute("SELECT CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2
        WHEN 'c' THEN 3 WHEN 'd' THEN 4 WHEN 'e' THEN 5 WHEN 'f' THEN
        'asd' END;")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2 WHEN 'c'
        THEN 3 WHEN 'd' THEN 4<br>
        -      WHEN 'e' THEN 5 WHEN 'f' THEN 'asd' END<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [1]<br>
        @@ -1196,8 +1194,7 @@ box.execute("SELECT CASE 'a' WHEN 'a' THEN
        1 WHEN 'b' THEN 2 WHEN 'c' THEN 3 WHE<br>
         box.execute("SELECT CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2
        WHEN 'c' THEN 3 WHEN 'd' THEN 4 WHEN 'e' THEN 5 WHEN 'f' THEN 6
        ELSE 'asd' END;")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2 WHEN 'c'
        THEN 3 WHEN 'd' THEN 4<br>
        -      WHEN 'e' THEN 5 WHEN 'f' THEN 6 ELSE 'asd' END<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [1]<br>
        @@ -1205,8 +1202,7 @@ box.execute("SELECT CASE 'a' WHEN 'a' THEN
        1 WHEN 'b' THEN 2 WHEN 'c' THEN 3 WHE<br>
         box.execute("SELECT CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2
        WHEN 'c' THEN 3 WHEN 'd' THEN 4 WHEN 'e' THEN 5 WHEN 'f' THEN 6
        ELSE 7 END;")<br>
         ---<br>
         - metadata:<br>
        -  - name: CASE 'a' WHEN 'a' THEN 1 WHEN 'b' THEN 2 WHEN 'c'
        THEN 3 WHEN 'd' THEN 4<br>
        -      WHEN 'e' THEN 5 WHEN 'f' THEN 6 ELSE 7 END<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -1284,7 +1280,7 @@ box.execute("SELECT total(v) FROM t;")<br>
         box.execute("SELECT min(v) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: min(v)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - ['abc']<br>
        @@ -1292,7 +1288,7 @@ box.execute("SELECT min(v) FROM t;")<br>
         box.execute("SELECT max(v) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: max(v)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - ['abc']<br>
        @@ -1300,7 +1296,7 @@ box.execute("SELECT max(v) FROM t;")<br>
         box.execute("SELECT count(v) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: count(v)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [1]<br>
        @@ -1308,7 +1304,7 @@ box.execute("SELECT count(v) FROM t;")<br>
         box.execute("SELECT group_concat(v) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: group_concat(v)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['abc']<br>
        @@ -1331,7 +1327,7 @@ box.execute("SELECT abs(v) FROM t;")<br>
         box.execute("SELECT typeof(v) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: typeof(v)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['varbinary']<br>
        @@ -1339,7 +1335,7 @@ box.execute("SELECT typeof(v) FROM t;")<br>
         box.execute("SELECT quote(v) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: quote(v)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['X''616263''']<br>
        @@ -1347,7 +1343,7 @@ box.execute("SELECT quote(v) FROM t;")<br>
         box.execute("SELECT LEAST(v, x'') FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: LEAST(v, x'')<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - ['']<br>
        @@ -1467,7 +1463,7 @@ box.execute("SELECT CAST(true AS
        VARBINARY);")<br>
         box.execute("SELECT CAST('asd' AS VARBINARY);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST('asd' AS VARBINARY)<br>
        +  - name: COLUMN_1<br>
             type: varbinary<br>
           rows:<br>
           - ['asd']<br>
        @@ -1475,7 +1471,7 @@ box.execute("SELECT CAST('asd' AS
        VARBINARY);")<br>
         box.execute("SELECT CAST(x'' AS VARBINARY);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(x'' AS VARBINARY)<br>
        +  - name: COLUMN_1<br>
             type: varbinary<br>
           rows:<br>
           - ['']<br>
        @@ -1494,9 +1490,9 @@ box.execute("INSERT INTO t VALUES (1, 1,
        1), (2, NULL, NULL);")<br>
         box.execute("SELECT typeof(a), typeof(s) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: typeof(a)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: typeof(s)<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - ['integer', 'integer']<br>
        @@ -1513,7 +1509,7 @@ box.execute('INSERT INTO t1 VALUES (1,
        NULL, NULL);')<br>
         box.execute('SELECT typeof(a & b) FROM t1;')<br>
         ---<br>
         - metadata:<br>
        -  - name: typeof(a & b)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['integer']<br>
        @@ -1521,11 +1517,11 @@ box.execute('SELECT typeof(a & b)
        FROM t1;')<br>
         box.execute('SELECT typeof(a), typeof(b), typeof(a & b)
        FROM t1')<br>
         ---<br>
         - metadata:<br>
        -  - name: typeof(a)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
        -  - name: typeof(b)<br>
        +  - name: COLUMN_2<br>
             type: string<br>
        -  - name: typeof(a & b)<br>
        +  - name: COLUMN_3<br>
             type: string<br>
           rows:<br>
           - ['integer', 'integer', 'integer']<br>
        @@ -1533,7 +1529,7 @@ box.execute('SELECT typeof(a), typeof(b),
        typeof(a & b) FROM t1')<br>
         box.execute("SELECT typeof(CAST(0 AS UNSIGNED));")<br>
         ---<br>
         - metadata:<br>
        -  - name: typeof(CAST(0 AS UNSIGNED))<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['unsigned']<br>
        @@ -1693,7 +1689,7 @@ box.execute('DROP TABLE t1;')<br>
         box.execute("SELECT 1.0;")<br>
         ---<br>
         - metadata:<br>
        -  - name: '1.0'<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [1]<br>
        @@ -1701,7 +1697,7 @@ box.execute("SELECT 1.0;")<br>
         box.execute("SELECT .01;")<br>
         ---<br>
         - metadata:<br>
        -  - name: '.01'<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [0.01]<br>
        @@ -1709,7 +1705,7 @@ box.execute("SELECT .01;")<br>
         box.execute("SELECT CAST(1 AS DOUBLE);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(1 AS DOUBLE)<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [1]<br>
        @@ -1717,7 +1713,7 @@ box.execute("SELECT CAST(1 AS DOUBLE);")<br>
         box.execute("SELECT CAST(1.123 AS DOUBLE);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(1.123 AS DOUBLE)<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [1.123]<br>
        @@ -1735,7 +1731,7 @@ box.execute("SELECT CAST('asd' AS
        DOUBLE);")<br>
         box.execute("SELECT CAST('1' AS DOUBLE);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST('1' AS DOUBLE)<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [1]<br>
        @@ -1743,7 +1739,7 @@ box.execute("SELECT CAST('1' AS DOUBLE);")<br>
         box.execute("SELECT CAST('1.123' AS DOUBLE);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST('1.123' AS DOUBLE)<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [1.123]<br>
        @@ -1761,7 +1757,7 @@ box.execute("SELECT CAST(x'35' AS
        DOUBLE);")<br>
         box.execute("SELECT CAST(CAST(x'35' AS STRING) AS DOUBLE);")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(CAST(x'35' AS STRING) AS DOUBLE)<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [5]<br>
        @@ -1795,7 +1791,7 @@ box.execute('SELECT * FROM t;')<br>
         box.execute('SELECT d / 100 FROM t;')<br>
         ---<br>
         - metadata:<br>
        -  - name: d / 100<br>
        +  - name: COLUMN_1<br>
             type: double<br>
           rows:<br>
           - [0.1]<br>
        @@ -1828,7 +1824,7 @@ box.execute('SELECT * from t WHERE d =
        3.3;')<br>
         box.execute("SELECT sum(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: sum(d)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [18000000000000000000]<br>
        @@ -1836,7 +1832,7 @@ box.execute("SELECT sum(d) FROM t;")<br>
         box.execute("SELECT avg(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: avg(d)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [4500000000000000000]<br>
        @@ -1844,7 +1840,7 @@ box.execute("SELECT avg(d) FROM t;")<br>
         box.execute("SELECT total(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: total(d)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [18000000000000000000]<br>
        @@ -1852,7 +1848,7 @@ box.execute("SELECT total(d) FROM t;")<br>
         box.execute("SELECT min(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: min(d)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [-2]<br>
        @@ -1860,7 +1856,7 @@ box.execute("SELECT min(d) FROM t;")<br>
         box.execute("SELECT max(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: max(d)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [18000000000000000000]<br>
        @@ -1868,7 +1864,7 @@ box.execute("SELECT max(d) FROM t;")<br>
         box.execute("SELECT count(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: count(d)<br>
        +  - name: COLUMN_1<br>
             type: integer<br>
           rows:<br>
           - [4]<br>
        @@ -1876,7 +1872,7 @@ box.execute("SELECT count(d) FROM t;")<br>
         box.execute("SELECT group_concat(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: group_concat(d)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['10.0,-2.0,3.3,1.8e+19']<br>
        @@ -1884,7 +1880,7 @@ box.execute("SELECT group_concat(d) FROM
        t;")<br>
         box.execute("SELECT lower(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: lower(d)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['10.0']<br>
        @@ -1895,7 +1891,7 @@ box.execute("SELECT lower(d) FROM t;")<br>
         box.execute("SELECT upper(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: upper(d)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['10.0']<br>
        @@ -1906,7 +1902,7 @@ box.execute("SELECT upper(d) FROM t;")<br>
         box.execute("SELECT abs(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: abs(d)<br>
        +  - name: COLUMN_1<br>
             type: number<br>
           rows:<br>
           - [10]<br>
        @@ -1917,7 +1913,7 @@ box.execute("SELECT abs(d) FROM t;")<br>
         box.execute("SELECT typeof(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: typeof(d)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['double']<br>
        @@ -1928,7 +1924,7 @@ box.execute("SELECT typeof(d) FROM t;")<br>
         box.execute("SELECT quote(d) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: quote(d)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - ['10.0']<br>
        @@ -1939,7 +1935,7 @@ box.execute("SELECT quote(d) FROM t;")<br>
         box.execute("SELECT LEAST(d, 0) FROM t;")<br>
         ---<br>
         - metadata:<br>
        -  - name: LEAST(d, 0)<br>
        +  - name: COLUMN_1<br>
             type: scalar<br>
           rows:<br>
           - [0]<br>
        @@ -2081,9 +2077,9 @@ box.execute("DROP TABLE t4;")<br>
         box.execute("SELECT 1.0, typeof(1.0);")<br>
         ---<br>
         - metadata:<br>
        -  - name: '1.0'<br>
        +  - name: COLUMN_1<br>
             type: double<br>
        -  - name: typeof(1.0)<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - [1, 'double']<br>
        @@ -2091,9 +2087,9 @@ box.execute("SELECT 1.0, typeof(1.0);")<br>
         box.execute("SELECT CAST(2 AS DOUBLE), typeof(CAST(2 AS
        DOUBLE));")<br>
         ---<br>
         - metadata:<br>
        -  - name: CAST(2 AS DOUBLE)<br>
        +  - name: COLUMN_1<br>
             type: double<br>
        -  - name: typeof(CAST(2 AS DOUBLE))<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - [2, 'double']<br>
        @@ -2101,9 +2097,9 @@ box.execute("SELECT CAST(2 AS DOUBLE),
        typeof(CAST(2 AS DOUBLE));")<br>
         box.execute("SELECT 3e3, typeof(3e3);")<br>
         ---<br>
         - metadata:<br>
        -  - name: '3e3'<br>
        +  - name: COLUMN_1<br>
             type: double<br>
        -  - name: typeof(3e3)<br>
        +  - name: COLUMN_2<br>
             type: string<br>
           rows:<br>
           - [3000, 'double']<br>
        @@ -2121,7 +2117,7 @@ box.execute("SELECT d, TYPEOF(d) FROM
        t5;")<br>
         - metadata:<br>
           - name: D<br>
             type: double<br>
        -  - name: TYPEOF(d)<br>
        +  - name: COLUMN_1<br>
             type: string<br>
           rows:<br>
           - [4, 'double']<br>
      </tt><br>
    </p>
  </body>
</html>