Sorry all, Figured it out, the following works:
query: select * from json_to_record('{"secLvl": 13, "firBal": "somethi", "firLvl": "C", "thiLvl": "A", "fourLvl": 2}'::json) as x("secLvl" int, "firBal" text, "firLvl " text, "thiLvl" text, "fourLvl" int); result: secLvl | firBal | firLvl | thiLvl | fourLvl --------+---------+--------+--------+--------- 13 | somethi | C | A | 2 (1 row) On Fri, Jul 25, 2025 at 1:26 PM Mark <nvpostg...@gmail.com> wrote: > Hi all > > Apologies for any unexpected protocol exceptions, I do not post to mailing > lists very often > > I have been trying to work with JSON objects and noticed I could not get > the function json_to_record to produce results, unless I had the key values > in lower case, through testing what works. > > I completed a search, but could not find any pointer (except for some > front end comments on labels being all upper or all lower case) > > Could anybody comment if the postgres standard is to have key labels in > lower case? > > Many thanks for any help you can provide > > Mark > > query: > select * from json_to_record('{"secLvl": 13, "firBal": "somethi", > "firLvl": "C", "thiLvl": "A", "fourLvl": 2}'::json) as x(seclvl int, firbal > text, firlvl text > , thilvl text, fourlvl int); > > result: > seclvl | firbal | firlvl | thilvl | fourlvl > --------+--------+--------+--------+--------- > | | | | > (1 row) > > > query: > select * from json_to_record('{"seclvl": 13, "firbal": "somethi", > "firlvl": "C", "thilvl": "A", "fourlvl": 2}'::json) as x(seclvl int, firbal > text, firlvl text > , thilvl text, fourlvl int); > > result: > seclvl | firbal | firlvl | thilvl | fourlvl > --------+---------+--------+--------+--------- > 13 | somethi | C | A | 2 > (1 row) > >