| From: | Álvaro Herrera <alvherre(at)kurilemu(dot)de> |
|---|---|
| To: | "Jonathan S(dot) Katz" <jkatz(at)postgresql(dot)org> |
| Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: PostgreSQL 19 GA press release draft |
| Date: | 2026-11-02 10:34:04 |
| Message-ID: | auhkWxpnMlkRHZrR@alvherre.pgsql |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On 2026-Nov-01, Jonathan S. Katz wrote:
> ### Developer experience and performance enhancements
>
> PostgreSQL 19 adds [`INSERT ... ON CONFLICT DO SELECT`](https://www.postgresql.org/docs/19/sql-insert.html#SQL-ON-CONFLICT),
> which lets the `RETURNING` clause return existing rows that conflict with an
> insert, simplifying the common "get or create" pattern.
> [`COPY`](https://www.postgresql.org/docs/19/sql-copy.html) can now output data
> as JSON, including as a single JSON array, and the
> [SQL/JSON path language](https://www.postgresql.org/docs/19/functions-json.html#FUNCTIONS-SQLJSON-PATH-OPERATORS)
> adds string methods such as `lower()`, `upper()`, `replace()`, `split_part()`,
> and `btrim()`. Additionally, the `lead()`, `lag()`, `first_value()`,
> `last_value()`, and `nth_value()` [window functions](https://www.postgresql.org/docs/19/functions-window.html)
> can now skip `NULL` values using `IGNORE NULLS`. The [`random()`](https://www.postgresql.org/docs/19/functions-math.html#FUNCTIONS-MATH-RANDOM-TABLE) function can now also generate random dates
> and timestamps within a range.
The link next to random() goes to the random() for numeric types, but
the random for dates and timestamps is documented at
https://www.postgresql.org/docs/19/functions-datetime.html#FUNCTIONS-DATETIME-TABLE
--
Álvaro Herrera PostgreSQL Developer — https://www.EnterpriseDB.com/
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Peter Eisentraut | 2026-11-02 10:35:12 | Avoid duplicate file references in backend .pot file |
| Previous Message | Nazir Bilal Yavuz | 2026-11-02 10:19:30 | Re: meson vs. llvm bitcode files |