13.2, изменилось поведение функции json_populate_recordset. В старой версии "ResultData":"{\"TotalPagesCount\":24,\"Count\":0,\"Ratio\":0.0,\"PagesList\":[]}" вставлялось без бэкслэша(\), экранируя " {"TotalPagesCount":24,"Count":0,"Ratio":0.0,"PagesList":[]}. В новой версии вставка идёт с бэкслэшем. Что то поменялось в конфигах?
ничего не поменялось - у вас ResultData - текст, внутри текста кавычки экранируются
Да, но раньше при экранировании они убирались, а теперь вставляются в результат
непонятно о чем пишите. сделайте явное приведение типов, если хотите JSON на выходе: "{\"TotalPagesCount\":24,\"Count\":0,\"Ratio\":0.0,\"PagesList\":[]}"::json
именно так и делаю, но результат на 9.4 : {"TotalPagesCount":24,"Count":0,"Ratio":0.0,"PagesList":[]} результат на 13.2 : "{\"TotalPagesCount\":24,\"Count\":0,\"Ratio\":0.0,\"PagesList\":[]}" запрос допустим с json_to_recordset select * from json_to_recordset( '[{"AccountID":574745,"ObjectID":308651,"ParentObjectID":null,"EntityType":3,"Type":14,"SubType":55,"Status":2,"ResultPriority":5,"DateCreated":"2021-10-08T00:00:03.298484+03:00","DateStatusUpdated":"2021-10-08T00:00:03.298484+03:00","ResultData":"{\"TotalPagesCount\":24,\"Count\":0,\"Ratio\":0.0,\"PagesList\":[]}","TaskId":24545557}]'::json ) as src("AccountID" bigint, "ObjectID" bigint , "ParentObjectID" bigint , "EntityType" smallint, "Type" smallint, "SubType" smallint, "Status" smallint, "ResultPriority" smallint, "DateCreated" timestamp without time zone, "DateStatusUpdated" timestamp without time zone, "ResultData" json , "TaskId" bigint);
Делаете неверно - в таком виде ResultData - тип "текст". Уберите экранирование и проверяйте селекты в psql, а не в непонятных сторонних приложениях. Вот так все работает корректно: select * from json_to_recordset( '[{"AccountID":574745,"ObjectID":308651,"ParentObjectID":null,"EntityType":3,"Type":14,"SubType":55,"Status":2,"ResultPriority":5,"DateCreated":"2021-10-08T00:00:03.298484+03:00","DateStatusUpdated":"2021-10-08T00:00:03.298484+03:00","ResultData":{"TotalPagesCount":24,"Count":0,"Ratio":0.0,"PagesList":[]},"TaskId":24545557}]'::json ) as src("AccountID" bigint, "ObjectID" bigint , "ParentObjectID" bigint , "EntityType" smallint, "Type" smallint, "SubType" smallint, "Status" smallint, "ResultPriority" smallint, "DateCreated" timestamp without time zone, "DateStatusUpdated" timestamp without time zone, "ResultData" json , "TaskId" bigint);
Обсуждают сегодня