mirror of
https://github.com/postgres/postgres.git
synced 2025-06-13 07:41:39 +03:00
Generated columns
This is an SQL-standard feature that allows creating columns that are computed from expressions rather than assigned, similar to a view or materialized view but on a column basis. This implements one kind of generated column: stored (computed on write). Another kind, virtual (computed on read), is planned for the future, and some room is left for it. Reviewed-by: Michael Paquier <michael@paquier.xyz> Reviewed-by: Pavel Stehule <pavel.stehule@gmail.com> Discussion: https://www.postgresql.org/message-id/flat/b151f851-4019-bdb1-699e-ebab07d2f40a@2ndquadrant.com
This commit is contained in:
@ -6431,6 +6431,31 @@ select * from rem1;
|
||||
11 | bye remote
|
||||
(4 rows)
|
||||
|
||||
-- ===================================================================
|
||||
-- test generated columns
|
||||
-- ===================================================================
|
||||
create table gloc1 (a int, b int);
|
||||
alter table gloc1 set (autovacuum_enabled = 'false');
|
||||
create foreign table grem1 (
|
||||
a int,
|
||||
b int generated always as (a * 2) stored)
|
||||
server loopback options(table_name 'gloc1');
|
||||
insert into grem1 (a) values (1), (2);
|
||||
update grem1 set a = 22 where a = 2;
|
||||
select * from gloc1;
|
||||
a | b
|
||||
----+----
|
||||
1 | 2
|
||||
22 | 44
|
||||
(2 rows)
|
||||
|
||||
select * from grem1;
|
||||
a | b
|
||||
----+----
|
||||
1 | 2
|
||||
22 | 44
|
||||
(2 rows)
|
||||
|
||||
-- ===================================================================
|
||||
-- test local triggers
|
||||
-- ===================================================================
|
||||
|
Reference in New Issue
Block a user