【发布时间】:2020-04-21 14:14:16
【问题描述】:
你好 Stack Overflowers! 我目前正在使用我开发的 C# 应用程序将 Postgres 表导出为 .csv。我可以使用以下命令导出它们没有问题...
set PGPASSWORD=password
psql -U USERNAME Database_Name
\copy (SELECT * FROM table1) TO C:\xyz\exportfile.csv CSV DELIMITER ',' HEADER;
我遇到的问题是 .csv 旨在与 Tableau 一起使用,但是,在导入到 excel 时,我遇到了同样的问题。它在 Tableau 和 Excel 中将文本字段转换为整数。这会导致特别是在 Tableau 端加入序列号时出现问题。
我知道我可以手动更改 Tableau/Excel 中的这些字段,但我正在尝试找到一种方法来确保最终用户不需要这样做。我希望他们只需拖放更新的 .csv postgresql 数据提取并能够毫无问题地启动 Tableau。他们似乎并不真正精通技术。我知道您可以将 Tableau 直接连接到 Postgres,但在这种特殊情况下,由于我无法控制的限制,我不允许这样做。
我正在使用 PostgreSQL 12 和 Tableau v2019.4.0
编辑:作为提供示例数据的请求!这两个字段都是 PostgreSQL 内部的 TEXT 但导出没有指定。
Excel Formatting
ASSETNUM,ITEMNUM
1834,8.11234E+12
1835,8.11234E+12
Notepad Formatting
ASSETNUM,ITEMNUM
1834,8112345673294
1835,8112345673295
注意:如果您在 Excel 中选择特定单元格,它会显示完整的数字。
【问题讨论】:
-
你能否展示你的CSV的样本行,它不需要有实际的真实数据,只要确保数据类型准确。您可能需要进行查询以输出仅包含要导出为文本的数字的 varchar 字段
-
旁注:也许标题不太好。
-
是的,应该只需要几分钟。
-
在这里查看superuser.com/q/318420 这个帖子可能会为您的问题提供一些启示。
-
@JorgeCampos 确实可以解决问题。但是,我的理解是我必须将记录值更改为 ="number" 才能正确导出?
标签: postgresql tableau-api psql