如何从json中的表中仅导入某些列并在运行时重命名它们?那是:
MyTable (id,column1,column2,columns3)
我想将它们导出为json:
MyTable: {column11,columns33}
因此只重命名了3列和2列.
解决方法
在
Export Postgres table as JSON上构建,您可以从表中选择所需的数据,将其转换为JSON,然后将其复制到文件中.这是
SQLFiddle showing the JSON conversion.
让我们玩吧
CREATE TABLE data (id integer,name varchar(255),quantity integer); INSERT INTO data VALUES (1,'apple',10),(2,'banana',20),(3,'cherry',30) ;
首先,使用更少的列和任何名称更改将数据转换为所需的格式.
SELECT name AS fruit_name,quantity FROM data;
然后,将其放在子查询中并将其转换为JSON.
SELECT row_to_json(fruit_data) FROM ( SELECT name AS fruit_name,quantity FROM data ) fruit_data;
最后,将所有内容都包装好.
COPY ( SELECT row_to_json(fruit_data) FROM ( SELECT name AS fruit_name,quantity FROM data ) fruit_data ) TO 'a.file';
这会将每行作为JSON逐行打印到文件中
{"fruit_name":"apple","quantity":10} {"fruit_name":"banana","quantity":20} {"fruit_name":"cherry","quantity":30}