2017-04-17 57 views
2
db.any(query) 
    .then(data => { 
     //console.log("data: " + JSON.stringify(data)); 
     res.json(data); 
     //res.send("data: " + JSON.stringify(data)); 
    }) 
    .catch(error => { 
     console.log("ERROR:", error) 
    }); 

是否有可能以CSV格式而不是JSON获取数据?如何使用pg-promise将数据下载为CSV文件?

+0

这是不相关的PG-承诺在所有。 –

+0

[将PostgreSQL的PL/pgSQL输出保存为CSV文件]可能的重复(http://stackoverflow.com/questions/1517635/save-pl-pgsql-output-from-postgresql-to-a-csv-file) –

+0

你使用Express框架吗? –

回答

0

正如我在评论中所述,这与pg-promise无关,它只是执行查询。

这个问题应该被要求 - 如何选择到PostgreSQL中CSV文件,这可是有很多的答案已经:

然后对于pg-promise,你会得到这样一个微不足道的东西:

var values = { 
    delimiter: ',', 
    path: 'd:/temp/users.csv' 
}; 

db.none('COPY (SELECT * FROM users) TO ${path} WITH CSV DELIMITER ${delimiter}', values) 
    .then(() => { 
     console.log('Successfully saved as:', values.path); 
    }) 
    .catch(error => { 
     console.log(error); 
    }); 

如果不是导出select的结果,而是想从HTTP服务下载它,那么这是一个完全不同的问题。但是,您只需将选择的结果转发到HTTP响应中,并将其标记为文件即可。

例子: