mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-11 19:20:40 +08:00
parent
8e2b71d2d0
commit
ac2d0e464a
@ -1350,6 +1350,47 @@ ORDER BY x, y;
|
||||
-> Index Only Scan using tenk1_unique2 on tenk1 b
|
||||
(6 rows)
|
||||
|
||||
-- exercise rescan code path via a repeatedly-evaluated subquery
|
||||
explain (costs off)
|
||||
SELECT
|
||||
(SELECT g.i FROM (
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
UNION ALL
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
) f(i)
|
||||
ORDER BY f.i LIMIT 1)
|
||||
FROM generate_series(1, 3) g(i);
|
||||
QUERY PLAN
|
||||
------------------------------------------------------------------------------------
|
||||
Function Scan on generate_series g
|
||||
SubPlan 1
|
||||
-> Limit
|
||||
-> Result
|
||||
-> Merge Append
|
||||
Sort Key: generate_series.generate_series
|
||||
-> Sort
|
||||
Sort Key: generate_series.generate_series
|
||||
-> Function Scan on generate_series
|
||||
-> Sort
|
||||
Sort Key: generate_series_1.generate_series
|
||||
-> Function Scan on generate_series generate_series_1
|
||||
(12 rows)
|
||||
|
||||
SELECT
|
||||
(SELECT g.i FROM (
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
UNION ALL
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
) f(i)
|
||||
ORDER BY f.i LIMIT 1)
|
||||
FROM generate_series(1, 3) g(i);
|
||||
i
|
||||
---
|
||||
1
|
||||
2
|
||||
3
|
||||
(3 rows)
|
||||
|
||||
reset enable_seqscan;
|
||||
reset enable_indexscan;
|
||||
reset enable_bitmapscan;
|
||||
|
@ -439,6 +439,26 @@ SELECT x, y FROM
|
||||
SELECT unique2 AS x, unique2 AS y FROM tenk1 b) s
|
||||
ORDER BY x, y;
|
||||
|
||||
-- exercise rescan code path via a repeatedly-evaluated subquery
|
||||
explain (costs off)
|
||||
SELECT
|
||||
(SELECT g.i FROM (
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
UNION ALL
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
) f(i)
|
||||
ORDER BY f.i LIMIT 1)
|
||||
FROM generate_series(1, 3) g(i);
|
||||
|
||||
SELECT
|
||||
(SELECT g.i FROM (
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
UNION ALL
|
||||
(SELECT * FROM generate_series(1, 2) ORDER BY 1)
|
||||
) f(i)
|
||||
ORDER BY f.i LIMIT 1)
|
||||
FROM generate_series(1, 3) g(i);
|
||||
|
||||
reset enable_seqscan;
|
||||
reset enable_indexscan;
|
||||
reset enable_bitmapscan;
|
||||
|
Loading…
Reference in New Issue
Block a user