On Fri, Apr 8, 2016 at 8:53 AM, Raymond O'Donnell <r...@iol.ie> wrote:
> On 08/04/2016 16:31, Michael Nolan wrote: > > I'm looking at the possibility of using JSON as a data exchange format > > with some apps running on both PCs and Macs. . > > > > The table I would be exporting has a lot of NULL values in it. Is > > there any way to skip the NULL values in the row_to_json function and > > include only the fields that are non-null? > > You could use a CTE to filter out the nulls (not tested - I haven't used > JSON in PG (yet!)): > > with no_nulls as ( > select ... from my_table > where whatever is not null > ) > select row_to_json(....) from no_nulls; > One of us is confused. I'm reading this as "I want a row_to_json" call to generate objects with different keys depending on whether a given key would have a null - in which case exclude the key. I think one would have to simply allow row_to_json to populate the keys with null values and then post-process them away: json_strip_nulls(row_to_json(...)) http://www.postgresql.org/docs/current/static/functions-json.html David J.