github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/opt/exec/execbuilder/testdata/dist_union (about)

     1  # LogicTest: 5node
     2  
     3  statement ok
     4  CREATE TABLE uniontest (
     5    k INT,
     6    v INT
     7  )
     8  
     9  query TTT
    10  EXPLAIN SELECT v FROM uniontest UNION SELECT k FROM uniontest
    11  ----
    12  ·          distributed  true
    13  ·          vectorized   true
    14  union      ·            ·
    15   ├── scan  ·            ·
    16   │         table        uniontest@primary
    17   │         spans        FULL SCAN
    18   └── scan  ·            ·
    19  ·          table        uniontest@primary
    20  ·          spans        FULL SCAN
    21  
    22  query TTT
    23  EXPLAIN SELECT v FROM uniontest UNION ALL SELECT k FROM uniontest
    24  ----
    25  ·          distributed  true
    26  ·          vectorized   true
    27  append     ·            ·
    28   ├── scan  ·            ·
    29   │         table        uniontest@primary
    30   │         spans        FULL SCAN
    31   └── scan  ·            ·
    32  ·          table        uniontest@primary
    33  ·          spans        FULL SCAN
    34  
    35  # Check that EXPLAIN properly releases memory for virtual tables.
    36  query TTT
    37  EXPLAIN SELECT node_id FROM crdb_internal.node_build_info UNION VALUES(123)
    38  ----
    39  ·                        distributed  false
    40  ·                        vectorized   false
    41  union                    ·            ·
    42   ├── values              ·            ·
    43   │                       size         1 column, 1 row
    44   └── render              ·            ·
    45        └── virtual table  ·            ·
    46  ·                        source       node_build_info@primary
    47  
    48  statement ok
    49  CREATE TABLE abc (a INT, b INT, c INT)
    50  
    51  query TTTTT
    52  EXPLAIN (VERBOSE) (SELECT a FROM abc ORDER BY b) INTERSECT (SELECT a FROM abc ORDER BY c) ORDER BY a
    53  ----
    54  ·                    distributed  true         ·       ·
    55  ·                    vectorized   true         ·       ·
    56  sort                 ·            ·            (a)     +a
    57   │                   order        +a           ·       ·
    58   └── union           ·            ·            (a)     ·
    59        ├── render     ·            ·            (a)     ·
    60        │    │         render 0     a            ·       ·
    61        │    └── scan  ·            ·            (a, c)  ·
    62        │              table        abc@primary  ·       ·
    63        │              spans        FULL SCAN    ·       ·
    64        └── render     ·            ·            (a)     ·
    65             │         render 0     a            ·       ·
    66             └── scan  ·            ·            (a, b)  ·
    67  ·                    table        abc@primary  ·       ·
    68  ·                    spans        FULL SCAN    ·       ·
    69  
    70  # Regression test for #32723.
    71  query TTTTT
    72  EXPLAIN (VERBOSE) SELECT a FROM ((SELECT '' AS a , '') EXCEPT ALL (SELECT '', ''))
    73  ----
    74  ·                      distributed    true             ·                         ·
    75  ·                      vectorized     true             ·                         ·
    76  render                 ·              ·                (a)                       ·
    77   │                     render 0       a                ·                         ·
    78   └── union             ·              ·                (a, a)                    ·
    79        ├── render       ·              ·                (a, a)                    ·
    80        │    │           render 0       a                ·                         ·
    81        │    │           render 1       a                ·                         ·
    82        │    └── values  ·              ·                (a)                       ·
    83        │                size           1 column, 1 row  ·                         ·
    84        │                row 0, expr 0  ''               ·                         ·
    85        └── render       ·              ·                ("?column?", "?column?")  ·
    86             │           render 0       "?column?"       ·                         ·
    87             │           render 1       "?column?"       ·                         ·
    88             └── values  ·              ·                ("?column?")              ·
    89  ·                      size           1 column, 1 row  ·                         ·
    90  ·                      row 0, expr 0  ''               ·                         ·
    91  
    92  query TTTTT
    93  EXPLAIN (VERBOSE) ((SELECT '', '', 'x' WHERE false))
    94  UNION ALL ((SELECT '', '', 'x') EXCEPT (VALUES ('', '', 'x')))
    95  ----
    96  ·                      distributed    true              ·                                     ·
    97  ·                      vectorized     true              ·                                     ·
    98  render                 ·              ·                 ("?column?", "?column?", "?column?")  ·
    99   │                     render 0       "?column?"        ·                                     ·
   100   │                     render 1       "?column?"        ·                                     ·
   101   │                     render 2       "?column?"        ·                                     ·
   102   └── union             ·              ·                 ("?column?", "?column?", "?column?")  ·
   103        ├── render       ·              ·                 ("?column?", "?column?", "?column?")  ·
   104        │    │           render 0       "?column?"        ·                                     ·
   105        │    │           render 1       "?column?"        ·                                     ·
   106        │    │           render 2       "?column?"        ·                                     ·
   107        │    └── values  ·              ·                 ("?column?", "?column?")              ·
   108        │                size           2 columns, 1 row  ·                                     ·
   109        │                row 0, expr 0  ''                ·                                     ·
   110        │                row 0, expr 1  'x'               ·                                     ·
   111        └── values       ·              ·                 (column1, column2, column3)           ·
   112  ·                      size           3 columns, 1 row  ·                                     ·
   113  ·                      row 0, expr 0  ''                ·                                     ·
   114  ·                      row 0, expr 1  ''                ·                                     ·
   115  ·                      row 0, expr 2  'x'               ·                                     ·
   116  
   117  statement ok
   118  CREATE TABLE a (a INT PRIMARY KEY)
   119  
   120  # Regression test for #34524. This test is here because the issue still exists
   121  # in the heuristic planner.
   122  query I
   123  (SELECT NULL FROM a) EXCEPT (VALUES((SELECT 1 FROM a LIMIT 1)), (1))
   124  ----