Bigquery上的长ID使用科学记数法导入excel,请勿导入正确的数字

时间:2018-03-28 23:20:13

标签: sql excel google-bigquery

我正在运行一个非常基本的查询来导出ID列表。但是,当我将该列表导出为CSV时,Excel会将ID转换为科学计数法,并且ID不再准确(最后一位数字替换为0)。

SELECT
  Subscription_id
FROM
` ds.sites`,
  unnest(SubscriptionIds)subscription_id

修改查询以便正确导出的任何想法?我尝试使用concat()在id周围添加引号(bc excel应该识别引号),但它打印不正确:

SELECT
  CONCAT(''', Subscription_id, ''') as Subscription_ID
FROM
` ds.sites`,
  unnest(SubscriptionIds)subscription_id


Row Subscription_ID  
1   , Subscription_id,   
2   , Subscription_id,   
3   , Subscription_id,   
4   , Subscription_id,   
5   , Subscription_id,   

Excel export -- all numbers end in 0

2 个答案:

答案 0 :(得分:3)

您只需更改将生成的CSV文件导入Excel的方式即可! 而不是使用Excel打开文件 - 请执行以下操作:

1 - 打开Excel,空书
 2 - 在菜单/工具栏中选择:数据>从文字
 3 - 选择您的csv文件
 4 - 完成导入对话框
 5 - 在步骤3中 - 对于各列 - 指定文本格式

完成

enter image description here

您将获得所有数字到位 在上面"示例"第一个字段选择为STRING,第二个字段为INT64

答案 1 :(得分:0)

在Bigquery中,''', Subscription_id, '''是一个“三引号”字符串,您可以在其中获得三重引号之间的所有内容的简单字符串。

尝试:

CONCAT("\"", Subscription_id, "\"")