select open change scope Open full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

FUNCTIONS / VERSION COMPARISON

What changed?

Functions · PostgreSQL 18 → 19 beta 3

Browse PG 19 →

Pre-release documentation. These definitions may change before the final release.

16 added · 0 removed · 18 changed · 0 coverage changes. These are changes in the pinned reference snapshots.

addederror_on_null
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+error_on_null ( anyelement ) → anyelement
changedrandom
--- 18
+++ 19 beta 3
@@ -2,3 +2,6 @@
 random ( min integer, max integer ) → integer
 random ( min bigint, max bigint ) → bigint
 random ( min numeric, max numeric ) → numeric
+random ( min date, max date ) → date
+random ( min timestamp, max timestamp ) → timestamp
+random ( min timestamptz, max timestamptz ) → timestamptz
changedregexp_count
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_count ( string text, pattern text [, start integer [, flags text ] ] ) → integer
+regexp_count(string, pattern [, start [, flags]]) → integer
changedregexp_instr
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_instr ( string text, pattern text [, start integer [, N integer [, endoption integer [, flags text [, subexpr integer ] ] ] ] ] ) → integer
+regexp_instr(string, pattern [, start [, N [, endoption [, flags [, subexpr]]]]]) → integer
changedregexp_like
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_like ( string text, pattern text [, flags text ] ) → boolean
+regexp_like(string, pattern [, flags]) → boolean
changedregexp_match
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_match ( string text, pattern text [, flags text ] ) → text[]
+regexp_match(string, pattern [, flags]) → text[]
changedregexp_matches
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_matches ( string text, pattern text [, flags text ] ) → setof text[]
+regexp_matches(string, pattern [, flags]) → setof text[]
changedregexp_replace
--- 18
+++ 19 beta 3
@@ -1,2 +1,4 @@
 regexp_replace ( string text, pattern text, replacement text [, flags text ] ) → text
 regexp_replace ( string text, pattern text, replacement text, start integer [, N integer [, flags text ] ] ) → text
+regexp_replace(string, pattern, replacement [, flags]) → text
+regexp_replace(string, pattern, replacement, start [, N [, flags]]) → text
changedregexp_split_to_array
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_split_to_array ( string text, pattern text [, flags text ] ) → text[]
+regexp_split_to_array(string, pattern [, flags]) → text[]
changedregexp_split_to_table
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_split_to_table ( string text, pattern text [, flags text ] ) → setof text
+regexp_split_to_table(string, pattern [, flags]) → setof text
changedregexp_substr
--- 18
+++ 19 beta 3
@@ -1 +1,2 @@
 regexp_substr ( string text, pattern text [, start integer [, N integer [, flags text [, subexpr integer ] ] ] ] ) → text
+regexp_substr(string, pattern [, start [, N [, flags [, subexpr]]]]) → text
changedsubstring
--- 18
+++ 19 beta 3
@@ -4,6 +4,8 @@
 substring ( string text FROM pattern text FOR escape text ) → text
 substring ( bytes bytea [ FROM start integer ] [ FOR count integer ] ) → bytea
 substring ( bits bit [ FROM start integer ] [ FOR count integer ] ) → bit
-substring(string similar pattern escape escape-character)
-substring(string from pattern for escape-character)
+substring(string SIMILAR pattern ESCAPE escape-character)
+substring(string FROM pattern FOR escape-character)
 substring(string, pattern, escape-character)
+substring(string from pattern) → text
+substring(string, pattern) → text
changedextract
--- 18
+++ 19 beta 3
@@ -1,3 +1,3 @@
-extract ( field from timestamp ) → numeric
-extract ( field from interval ) → numeric
+extract ( field FROM timestamp ) → numeric
+extract ( field FROM interval ) → numeric
 EXTRACT(field FROM source)
addedtid_block
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+tid_block ( tid ) → bigint
addedtid_offset
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+tid_offset ( tid ) → integer
addedpg_get_sequence_data
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_get_sequence_data ( regclass ) → record ( last_value bigint, is_called bool, page_lsn pg_lsn )
addedmultirange_minus_multi
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+multirange_minus_multi ( anymultirange, anymultirange ) → setof anymultirange
addedrange_minus_multi
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+range_minus_multi ( anyrange, anyrange ) → setof anyrange
changedfirst_value
--- 18
+++ 19 beta 3
@@ -1 +1 @@
-first_value ( value anyelement ) → anyelement
+first_value ( value anyelement ) [ null treatment ] → anyelement
changedlag
--- 18
+++ 19 beta 3
@@ -1 +1 @@
-lag ( value anycompatible [, offset integer [, default anycompatible ]] ) → anycompatible
+lag ( value anycompatible [, offset integer [, default anycompatible ]] ) [ null treatment ] → anycompatible
changedlast_value
--- 18
+++ 19 beta 3
@@ -1 +1 @@
-last_value ( value anyelement ) → anyelement
+last_value ( value anyelement ) [ null treatment ] → anyelement
changedlead
--- 18
+++ 19 beta 3
@@ -1 +1 @@
-lead ( value anycompatible [, offset integer [, default anycompatible ]] ) → anycompatible
+lead ( value anycompatible [, offset integer [, default anycompatible ]] ) [ null treatment ] → anycompatible
changednth_value
--- 18
+++ 19 beta 3
@@ -1 +1 @@
-nth_value ( value anyelement, n integer ) → anyelement
+nth_value ( value anyelement, n integer ) [ null treatment ] → anyelement
addedpg_get_database_ddl
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_get_database_ddl ( database regdatabase [, pretty boolean DEFAULT false] [, owner boolean DEFAULT true] [, tablespace boolean DEFAULT true] ) → setof text
addedpg_get_multixact_stats
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_get_multixact_stats () → record ( num_mxids integer, num_members bigint, members_size bigint, oldest_multixact xid )
addedpg_get_propgraphdef
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_get_propgraphdef ( propgraph oid ) → text
addedpg_get_role_ddl
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_get_role_ddl ( role regrole [, pretty boolean DEFAULT false] [, memberships boolean DEFAULT true] ) → setof text
addedpg_get_tablespace_ddl
--- 18
+++ 19 beta 3
@@ -0,0 +1,2 @@
+pg_get_tablespace_ddl ( tablespace oid [, pretty boolean DEFAULT false] [, owner boolean DEFAULT true] ) → setof text
+pg_get_tablespace_ddl ( tablespace name [, pretty boolean DEFAULT false] [, owner boolean DEFAULT true] ) → setof text
addedto_regdatabase
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+to_regdatabase ( text ) → regdatabase
addedpg_clear_extended_stats
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_clear_extended_stats ( schemaname name, relname name, statistics_schemaname name, statistics_name name, inherited boolean ) → void
addedpg_disable_data_checksums
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_disable_data_checksums () → void
addedpg_enable_data_checksums
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_enable_data_checksums ( [cost_delay int, cost_limit int] ) → void
changedpg_replication_origin_session_setup
--- 18
+++ 19 beta 3
@@ -1 +1 @@
-pg_replication_origin_session_setup ( node_name text ) → void
+pg_replication_origin_session_setup ( node_name text [, pid integer DEFAULT 0] ) → void
addedpg_restore_extended_stats
--- 18
+++ 19 beta 3
@@ -0,0 +1 @@
+pg_restore_extended_stats ( VARIADIC kwargs "any" ) → boolean