github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/opt/optbuilder/testdata/sequence (about) 1 exec-ddl 2 CREATE SEQUENCE x 3 ---- 4 5 exec-ddl 6 CREATE SEQUENCE y 7 ---- 8 9 build 10 SELECT * FROM x 11 ---- 12 sequence-select x 13 └── columns: last_value:1!null log_cnt:2!null is_called:3!null 14 15 build 16 SELECT z.last_value FROM x AS z 17 ---- 18 project 19 ├── columns: last_value:1!null 20 └── sequence-select x 21 └── columns: last_value:1!null log_cnt:2!null is_called:3!null 22 23 build 24 SELECT last_value FROM x 25 ---- 26 project 27 ├── columns: last_value:1!null 28 └── sequence-select x 29 └── columns: last_value:1!null log_cnt:2!null is_called:3!null 30 31 build 32 SELECT log_cnt FROM x 33 ---- 34 project 35 ├── columns: log_cnt:2!null 36 └── sequence-select x 37 └── columns: last_value:1!null log_cnt:2!null is_called:3!null 38 39 # Multiple sequences in a query. 40 build 41 (SELECT * FROM x) UNION (SELECT * FROM y) 42 ---- 43 union 44 ├── columns: last_value:7!null log_cnt:8!null is_called:9!null 45 ├── left columns: last_value:1 log_cnt:2 is_called:3 46 ├── right columns: last_value:4 log_cnt:5 is_called:6 47 ├── sequence-select x 48 │ └── columns: last_value:1!null log_cnt:2!null is_called:3!null 49 └── sequence-select y 50 └── columns: last_value:4!null log_cnt:5!null is_called:6!null 51 52 # Sequences occurring multiple times in a query. 53 build 54 (SELECT * FROM x) 55 EXCEPT (SELECT * FROM x) 56 EXCEPT (SELECT * FROM y) 57 EXCEPT (SELECT * FROM x) 58 EXCEPT (SELECT * FROM y) 59 ---- 60 except 61 ├── columns: last_value:1!null log_cnt:2!null is_called:3!null 62 ├── left columns: last_value:1!null log_cnt:2!null is_called:3!null 63 ├── right columns: last_value:13 log_cnt:14 is_called:15 64 ├── except 65 │ ├── columns: last_value:1!null log_cnt:2!null is_called:3!null 66 │ ├── left columns: last_value:1!null log_cnt:2!null is_called:3!null 67 │ ├── right columns: last_value:10 log_cnt:11 is_called:12 68 │ ├── except 69 │ │ ├── columns: last_value:1!null log_cnt:2!null is_called:3!null 70 │ │ ├── left columns: last_value:1!null log_cnt:2!null is_called:3!null 71 │ │ ├── right columns: last_value:7 log_cnt:8 is_called:9 72 │ │ ├── except 73 │ │ │ ├── columns: last_value:1!null log_cnt:2!null is_called:3!null 74 │ │ │ ├── left columns: last_value:1!null log_cnt:2!null is_called:3!null 75 │ │ │ ├── right columns: last_value:4 log_cnt:5 is_called:6 76 │ │ │ ├── sequence-select x 77 │ │ │ │ └── columns: last_value:1!null log_cnt:2!null is_called:3!null 78 │ │ │ └── sequence-select x 79 │ │ │ └── columns: last_value:4!null log_cnt:5!null is_called:6!null 80 │ │ └── sequence-select y 81 │ │ └── columns: last_value:7!null log_cnt:8!null is_called:9!null 82 │ └── sequence-select x 83 │ └── columns: last_value:10!null log_cnt:11!null is_called:12!null 84 └── sequence-select y 85 └── columns: last_value:13!null log_cnt:14!null is_called:15!null 86 87 # Ensure index flags are ignored. 88 build 89 SELECT * FROM x@primary 90 ---- 91 sequence-select x 92 └── columns: last_value:1!null log_cnt:2!null is_called:3!null 93 94 build 95 SELECT * FROM x@foobar 96 ---- 97 sequence-select x 98 └── columns: last_value:1!null log_cnt:2!null is_called:3!null 99 100 # Ordinal refs with a sequence. 101 build 102 SELECT @1 FROM x 103 ---- 104 project 105 ├── columns: "?column?":4!null 106 ├── sequence-select x 107 │ └── columns: last_value:1!null log_cnt:2!null is_called:3!null 108 └── projections 109 └── last_value:1 [as="?column?":4] 110 111 # Check a query with an extra operator. 112 build 113 SELECT * FROM x WHERE last_value = 0 114 ---- 115 select 116 ├── columns: last_value:1!null log_cnt:2!null is_called:3!null 117 ├── sequence-select x 118 │ └── columns: last_value:1!null log_cnt:2!null is_called:3!null 119 └── filters 120 └── last_value:1 = 0 121 122 build 123 INSERT INTO x VALUES (0, 0, false) 124 ---- 125 error (42809): "x" is not a table