簡體   English   中英

帶有列別名的 PSQL 到 CSV 會導致文件損壞

[英]PSQL to CSV with column alias leads to corrupted file

我設法在 Windows 上使用 PSQL 將 SQL 查詢直接導出到 CSV 文件中,只要我不使用別名(使用 AS)重新定義列名,一切都可以正常工作。

但是一旦我使用列別名,例如:

\copy (SELECT    project AS "ID" FROM    mydb.mytable WHERE  project > 15 ORDER BY project)  TO 'C:/FILES/user/test_SQL2CSV.csv' DELIMITER ',' CSV HEADER

我對 CSV 文件有意外行為。

  • 在 Excel 中:CSV 已損壞且為空白
  • 在記事本中:數據存在,但沒有分隔符或空格(連續,例如 ID27282930...)
  • 在 Notepad++ 中:數據在列中組織良好

(例如

ID
27
28
29
30
...

)

有什么辦法可以直接在 Excel 中讀取導出的文件(就像我不使用別名時那樣)?

在測試了查詢的各種其他配置后,我發現了問題。 顯然,Excel 將以“ID”開頭的文件解釋為某種 SYLK 格式而不是 CSV...將列別名重命名為例如“MyID”修復了該問題。

參考這里: annalear.ca/2010/06/10/why-excel-thinks-your-csv-is-a-sylk

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM