<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/waiting-for-postgresql-19-json-format-for-copy-to-select-from-depesz--a8ry0nduu" -->

---
title: Waiting for PostgreSQL 19 – json format for COPY TO –...
description: PostgreSQL 19 will introduce native JSON format support for the COPY TO command, enabling direct export of query results or table data as NDJSON (one JSON...
canonical: https://daily.dev/posts/waiting-for-postgresql-19-json-format-for-copy-to-select-from-depesz--a8ry0nduu
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Waiting for PostgreSQL 19 – json format for COPY TO – select * from depesz; | daily.dev
og:description: PostgreSQL 19 will introduce native JSON format support for the COPY TO command, enabling direct export of query results or table data as NDJSON (one JSON...
og:url: https://daily.dev/posts/waiting-for-postgresql-19-json-format-for-copy-to-select-from-depesz--a8ry0nduu
og:image: https://api.daily.dev/og/posts/A8rY0NDuu.png
og:image:alt: Waiting for PostgreSQL 19 – json format for COPY TO – select * from depesz;
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Waiting for PostgreSQL 19 – json format for COPY TO – select * from depesz;

**[depesz](https://daily.dev/sources/depesz)** · 3 min read · 0 upvotes · 0 comments

## Summary

PostgreSQL 19 will introduce native JSON format support for the COPY TO command, enabling direct export of query results or table data as NDJSON (one JSON object per line). The new format supports an optional force_array option to wrap all records in a JSON array. It is incompatible with some standard text/CSV options like HEADER, NULL, and DELIMITER. While a workaround using COPY with a SELECT subquery and to_json() existed before, the new native approach is faster and uses less memory.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.depesz.com/2026/03/29/waiting-for-postgresql-19-json-format-for-copy-to/>

## Similar posts on daily.dev

- [Waiting for PostgreSQL 19 – Support COPY TO for partitioned tables. – select \* from depesz;](https://daily.dev/posts/waiting-for-postgresql-19-support-copy-to-for-partitioned-tables-select-from-depesz--ryskyymw6) · depesz · 6 upvotes · 0 comments
- [Waiting for PostgreSQL 19 – Add non-text output formats to pg\_dumpall – select \* from depesz;](https://daily.dev/posts/waiting-for-postgresql-19-add-non-text-output-formats-to-pg-dumpall-select-from-depesz--tbnh1gvb7) · depesz · 0 upvotes · 0 comments

---

Tags: [#postgresql](https://daily.dev/tags/postgresql)

[View this post on daily.dev](https://daily.dev/posts/waiting-for-postgresql-19-json-format-for-copy-to-select-from-depesz--a8ry0nduu)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Waiting for PostgreSQL 19 – json format for COPY TO – select * from depesz;","url":"https://daily.dev/posts/waiting-for-postgresql-19-json-format-for-copy-to-select-from-depesz--a8ry0nduu","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/waiting-for-postgresql-19-json-format-for-copy-to-select-from-depesz--a8ry0nduu"},"datePublished":"2026-03-29T12:39:20.163Z","dateModified":"2026-03-29T12:39:45.147Z","description":"PostgreSQL 19 will introduce native JSON format support for the COPY TO command, enabling direct export of query results or table data as NDJSON (one JSON...","image":"https://media.daily.dev/image/upload/s--qPvKM23u--/f_auto/v1722860399/public/Placeholder%2009","thumbnailUrl":"https://media.daily.dev/image/upload/s--qPvKM23u--/f_auto/v1722860399/public/Placeholder%2009","isAccessibleForFree":true,"articleSection":"depesz","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"depesz","logo":"https://media.daily.dev/image/upload/s--ir7juGOi--/f_auto/v1758461024/logos/depesz","url":"https://daily.dev/sources/depesz"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/waiting-for-postgresql-19-json-format-for-copy-to-select-from-depesz--a8ry0nduu","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"postgresql","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"depesz","item":"https://daily.dev/sources/depesz"},{"@type":"ListItem","position":3,"name":"Waiting for PostgreSQL 19 – json format for COPY TO – select * from depesz;"}]}
```

