@@ -23,7 +23,7 @@ INSERT INTO test.tmp VALUES (1, 1), (2, 2);
23
23
CREATE TABLE test.tmp2 (id INTEGER NOT NULL, value INTEGER NOT NULL);
24
24
INSERT INTO test.tmp2 SELECT i % 10 + 1, i FROM generate_series(1, 100) i;
25
25
SELECT pathman.create_range_partitions('test.tmp2', 'id', 1, 1, 10);
26
- create_range_partitions
26
+ create_range_partitions
27
27
-------------------------
28
28
10
29
29
(1 row)
@@ -38,7 +38,7 @@ FROM generate_series('2010-01-01'::date, '2010-12-31'::date, '1 day') AS g;
38
38
SELECT pathman.create_range_partitions('test.range_rel', 'dt',
39
39
'2010-01-01'::date, '1 month'::interval,
40
40
12);
41
- create_range_partitions
41
+ create_range_partitions
42
42
-------------------------
43
43
12
44
44
(1 row)
@@ -49,7 +49,7 @@ VACUUM ANALYZE;
49
49
*/
50
50
/* have partitions for this 'dt' */
51
51
EXPLAIN (COSTS OFF) UPDATE test.range_rel SET value = 111 WHERE dt = '2010-06-15';
52
- QUERY PLAN
52
+ QUERY PLAN
53
53
--------------------------------------------------------------------------------
54
54
Update on range_rel_6
55
55
-> Seq Scan on range_rel_6
@@ -59,15 +59,15 @@ EXPLAIN (COSTS OFF) UPDATE test.range_rel SET value = 111 WHERE dt = '2010-06-15
59
59
BEGIN;
60
60
UPDATE test.range_rel SET value = 111 WHERE dt = '2010-06-15';
61
61
SELECT * FROM test.range_rel WHERE dt = '2010-06-15';
62
- id | dt | value
62
+ id | dt | value
63
63
-----+--------------------------+-------
64
64
166 | Tue Jun 15 00:00:00 2010 | 111
65
65
(1 row)
66
66
67
67
ROLLBACK;
68
68
/* have partitions for this 'dt' */
69
69
EXPLAIN (COSTS OFF) DELETE FROM test.range_rel WHERE dt = '2010-06-15';
70
- QUERY PLAN
70
+ QUERY PLAN
71
71
--------------------------------------------------------------------------------
72
72
Delete on range_rel_6
73
73
-> Seq Scan on range_rel_6
@@ -77,14 +77,14 @@ EXPLAIN (COSTS OFF) DELETE FROM test.range_rel WHERE dt = '2010-06-15';
77
77
BEGIN;
78
78
DELETE FROM test.range_rel WHERE dt = '2010-06-15';
79
79
SELECT * FROM test.range_rel WHERE dt = '2010-06-15';
80
- id | dt | value
80
+ id | dt | value
81
81
----+----+-------
82
82
(0 rows)
83
83
84
84
ROLLBACK;
85
85
/* no partitions for this 'dt' */
86
86
EXPLAIN (COSTS OFF) UPDATE test.range_rel SET value = 222 WHERE dt = '1990-01-01';
87
- QUERY PLAN
87
+ QUERY PLAN
88
88
--------------------------------------------------------------------------------
89
89
Update on range_rel
90
90
-> Seq Scan on range_rel
@@ -94,14 +94,14 @@ EXPLAIN (COSTS OFF) UPDATE test.range_rel SET value = 222 WHERE dt = '1990-01-01
94
94
BEGIN;
95
95
UPDATE test.range_rel SET value = 111 WHERE dt = '1990-01-01';
96
96
SELECT * FROM test.range_rel WHERE dt = '1990-01-01';
97
- id | dt | value
97
+ id | dt | value
98
98
----+----+-------
99
99
(0 rows)
100
100
101
101
ROLLBACK;
102
102
/* no partitions for this 'dt' */
103
103
EXPLAIN (COSTS OFF) DELETE FROM test.range_rel WHERE dt < '1990-01-01';
104
- QUERY PLAN
104
+ QUERY PLAN
105
105
--------------------------------------------------------------------------------
106
106
Delete on range_rel
107
107
-> Seq Scan on range_rel
@@ -111,7 +111,7 @@ EXPLAIN (COSTS OFF) DELETE FROM test.range_rel WHERE dt < '1990-01-01';
111
111
BEGIN;
112
112
DELETE FROM test.range_rel WHERE dt < '1990-01-01';
113
113
SELECT * FROM test.range_rel WHERE dt < '1990-01-01';
114
- id | dt | value
114
+ id | dt | value
115
115
----+----+-------
116
116
(0 rows)
117
117
@@ -120,7 +120,7 @@ ROLLBACK;
120
120
EXPLAIN (COSTS OFF)
121
121
UPDATE test.range_rel r SET value = t.value
122
122
FROM test.tmp t WHERE r.dt = '2010-01-01' AND r.id = t.id;
123
- QUERY PLAN
123
+ QUERY PLAN
124
124
--------------------------------------------------------------------------------------
125
125
Update on range_rel_1 r
126
126
-> Nested Loop
@@ -138,7 +138,7 @@ ROLLBACK;
138
138
EXPLAIN (COSTS OFF)
139
139
UPDATE test.tmp t SET value = r.value
140
140
FROM test.range_rel r WHERE r.dt = '2010-01-01' AND r.id = t.id;
141
- QUERY PLAN
141
+ QUERY PLAN
142
142
--------------------------------------------------------------------------------------
143
143
Update on tmp t
144
144
-> Nested Loop
@@ -156,7 +156,7 @@ ROLLBACK;
156
156
EXPLAIN (COSTS OFF)
157
157
DELETE FROM test.range_rel r USING test.tmp t
158
158
WHERE r.dt = '2010-01-02' AND r.id = t.id;
159
- QUERY PLAN
159
+ QUERY PLAN
160
160
--------------------------------------------------------------------------------------
161
161
Delete on range_rel_1 r
162
162
-> Nested Loop
@@ -174,7 +174,7 @@ ROLLBACK;
174
174
EXPLAIN (COSTS OFF)
175
175
DELETE FROM test.tmp t USING test.range_rel r
176
176
WHERE r.dt = '2010-01-02' AND r.id = t.id;
177
- QUERY PLAN
177
+ QUERY PLAN
178
178
--------------------------------------------------------------------------------------
179
179
Delete on tmp t
180
180
-> Nested Loop
@@ -224,7 +224,7 @@ USING (SELECT *
224
224
JOIN test.tmp2 a2
225
225
USING(id)) t
226
226
WHERE t.id = r.id;
227
- QUERY PLAN
227
+ QUERY PLAN
228
228
------------------------------------------------
229
229
Delete on tmp r
230
230
-> Nested Loop
@@ -303,7 +303,7 @@ UPDATE test.tmp t SET value = 2
303
303
WHERE t.id IN (SELECT id
304
304
FROM test.tmp2 t2
305
305
WHERE id = t.id);
306
- QUERY PLAN
306
+ QUERY PLAN
307
307
--------------------------------------------
308
308
Update on tmp t
309
309
-> Seq Scan on tmp t
@@ -338,7 +338,7 @@ EXPLAIN (COSTS OFF)
338
338
WITH q AS (SELECT * FROM test.range_rel r
339
339
WHERE r.dt = '2010-01-02')
340
340
DELETE FROM test.tmp USING q;
341
- QUERY PLAN
341
+ QUERY PLAN
342
342
--------------------------------------------------------------------------------------------
343
343
Delete on tmp
344
344
-> Nested Loop
@@ -359,7 +359,7 @@ WITH q AS (DELETE FROM test.range_rel r
359
359
WHERE r.dt = '2010-01-02'
360
360
RETURNING *)
361
361
DELETE FROM test.tmp USING q;
362
- QUERY PLAN
362
+ QUERY PLAN
363
363
----------------------------------------------------------------------------------------
364
364
Delete on tmp
365
365
CTE q
@@ -384,7 +384,7 @@ WITH q AS (DELETE FROM test.tmp t
384
384
WHERE r.dt = '2010-01-02' AND r.id = t.id
385
385
RETURNING *)
386
386
DELETE FROM test.tmp USING q;
387
- QUERY PLAN
387
+ QUERY PLAN
388
388
----------------------------------------------------------------------------------------------
389
389
Delete on tmp
390
390
CTE q
@@ -414,15 +414,15 @@ WITH q AS (WITH n AS (SELECT id FROM test.tmp2 WHERE id = 2)
414
414
WHERE t.id = n.id
415
415
RETURNING *)
416
416
DELETE FROM test.tmp USING q;
417
- QUERY PLAN
418
- ---------------------------------------------
417
+ QUERY PLAN
418
+ ----------------------------------------
419
419
Delete on tmp
420
420
CTE q
421
421
-> Delete on tmp t
422
422
-> Nested Loop
423
423
-> Seq Scan on tmp t
424
424
Filter: (id = 2)
425
- -> Seq Scan on tmp2_2 tmp2
425
+ -> Seq Scan on tmp2_2
426
426
Filter: (id = 2)
427
427
-> Nested Loop
428
428
-> Seq Scan on tmp
@@ -434,7 +434,7 @@ EXPLAIN (COSTS OFF)
434
434
WITH q AS (SELECT id FROM test.tmp2
435
435
WHERE id < 3)
436
436
DELETE FROM test.tmp t WHERE t.id in (SELECT id FROM q);
437
- QUERY PLAN
437
+ QUERY PLAN
438
438
--------------------------------------------------------------
439
439
Delete on tmp t
440
440
-> Nested Loop Semi Join
0 commit comments