By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
Help with an interesting Postgres question: Why isn't an Index Only Scan used on a partition accessed via the parent table?.
CREATE VIEW v_myview AS
SELECT * FROM (VALUES (1, 'a'), (2, 'b')) AS t(id, some_text)
UNION ALL
SELECT * FROM (VALUES (10, 'AA'), (20, 'BB')) AS t(id, some_text);
SELECT * FROM v_myview;
CREATE VIEW
id | some_text |
---|---|
1 | a |
2 | b |
10 | AA |
20 | BB |
SELECT 4
CREATE VIEW v_myview_with_id AS
SELECT
row_number() OVER (ORDER BY id DESC),
*
FROM (
SELECT * FROM (VALUES (1, 'a'), (2, 'b')) AS t(id, some_text)
UNION ALL
SELECT * FROM (VALUES (10, 'AA'), (20, 'BB')) AS t(id, some_text)
)s;
SELECT * FROM v_myview_with_id
CREATE VIEW
row_number | id | some_text |
---|---|---|
1 | 20 | BB |
2 | 10 | AA |
3 | 2 | b |
4 | 1 | a |
SELECT 4