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

     1  # LogicTest: local
     2  
     3  statement ok
     4  CREATE TABLE x(a INT)
     5  
     6  statement ok
     7  CREATE TABLE y(a INT)
     8  
     9  query TTTTT
    10  EXPLAIN (VERBOSE)
    11    WITH t AS (SELECT a FROM y) SELECT * FROM t JOIN t AS q ON true
    12  ----
    13  ·                           distributed   false            ·       ·
    14  ·                           vectorized    false            ·       ·
    15  root                        ·             ·                (a, a)  ·
    16   ├── cross-join             ·             ·                (a, a)  ·
    17   │    │                     type          cross            ·       ·
    18   │    ├── scan buffer node  ·             ·                (a)     ·
    19   │    │                     label         buffer 1 (t)     ·       ·
    20   │    └── scan buffer node  ·             ·                (a)     ·
    21   │                          label         buffer 1 (t)     ·       ·
    22   └── subquery               ·             ·                ·       ·
    23        │                     id            @S1              ·       ·
    24        │                     original sql  SELECT a FROM y  ·       ·
    25        │                     exec mode     all rows         ·       ·
    26        └── buffer node       ·             ·                (a)     ·
    27             │                label         buffer 1 (t)     ·       ·
    28             └── scan         ·             ·                (a)     ·
    29  ·                           table         y@primary        ·       ·
    30  ·                           spans         FULL SCAN        ·       ·
    31  
    32  query TTTTT
    33  EXPLAIN (VERBOSE)
    34    WITH t AS (SELECT a FROM y) SELECT * FROM t
    35  ----
    36  ·          distributed  false      ·    ·
    37  ·          vectorized   true       ·    ·
    38  render     ·            ·          (a)  ·
    39   │         render 0     a          ·    ·
    40   └── scan  ·            ·          (a)  ·
    41  ·          table        y@primary  ·    ·
    42  ·          spans        FULL SCAN  ·    ·
    43  
    44  query TTTTT
    45  EXPLAIN (VERBOSE)
    46    WITH t AS (INSERT INTO x VALUES (1) RETURNING a) SELECT * FROM t
    47  ----
    48  ·                                          distributed    false                                 ·                   ·
    49  ·                                          vectorized     false                                 ·                   ·
    50  root                                       ·              ·                                     (a)                 ·
    51   ├── scan buffer node                      ·              ·                                     (a)                 ·
    52   │                                         label          buffer 1 (t)                          ·                   ·
    53   └── subquery                              ·              ·                                     ·                   ·
    54        │                                    id             @S1                                   ·                   ·
    55        │                                    original sql   INSERT INTO x VALUES (1) RETURNING a  ·                   ·
    56        │                                    exec mode      all rows                              ·                   ·
    57        └── buffer node                      ·              ·                                     (a)                 ·
    58             │                               label          buffer 1 (t)                          ·                   ·
    59             └── spool                       ·              ·                                     (a)                 ·
    60                  └── render                 ·              ·                                     (a)                 ·
    61                       │                     render 0       a                                     ·                   ·
    62                       └── run               ·              ·                                     (a, rowid[hidden])  ·
    63                            └── insert       ·              ·                                     (a, rowid[hidden])  ·
    64                                 │           into           x(a, rowid)                           ·                   ·
    65                                 │           strategy       inserter                              ·                   ·
    66                                 └── values  ·              ·                                     (column1, column4)  ·
    67  ·                                          size           2 columns, 1 row                      ·                   ·
    68  ·                                          row 0, expr 0  1                                     ·                   ·
    69  ·                                          row 0, expr 1  unique_rowid()                        ·                   ·
    70  
    71  # Regression test for #39010.
    72  
    73  statement ok
    74  CREATE TABLE table39010 (col NAME)
    75  
    76  query TTTTT
    77  EXPLAIN (VERBOSE)
    78    WITH
    79      w AS (SELECT NULL, NULL FROM table39010)
    80    SELECT
    81      col
    82    FROM
    83      w, table39010
    84  ----
    85  ·           distributed  false               ·      ·
    86  ·           vectorized   true                ·      ·
    87  cross-join  ·            ·                   (col)  ·
    88   │          type         cross               ·      ·
    89   ├── scan   ·            ·                   ()     ·
    90   │          table        table39010@primary  ·      ·
    91   │          spans        FULL SCAN           ·      ·
    92   └── scan   ·            ·                   (col)  ·
    93  ·           table        table39010@primary  ·      ·
    94  ·           spans        FULL SCAN           ·      ·
    95  
    96  query TTTTT
    97  EXPLAIN (VERBOSE)
    98    WITH RECURSIVE t(n) AS (
    99        VALUES (1)
   100      UNION ALL
   101        SELECT n+1 FROM t WHERE n < 100
   102    )
   103    SELECT sum(n) FROM t
   104  ----
   105  ·                             distributed    false               ·          ·
   106  ·                             vectorized     false               ·          ·
   107  group                         ·              ·                   (sum)      ·
   108   │                            aggregate 0    sum(n)              ·          ·
   109   │                            scalar         ·                   ·          ·
   110   └── render                   ·              ·                   (n)        ·
   111        │                       render 0       column1             ·          ·
   112        └── recursive cte node  ·              ·                   (column1)  ·
   113             │                  label          working buffer (t)  ·          ·
   114             └── values         ·              ·                   (column1)  ·
   115  ·                             size           1 column, 1 row     ·          ·
   116  ·                             row 0, expr 0  1                   ·          ·