【问题标题】:Keep leading zeros when joining data sources in tableau在 tableau 中加入数据源时保留前导零
【发布时间】:2018-02-10 00:19:41
【问题描述】:

我正在尝试在 Tableau (10.0) 中创建一个数据源,我正在将 SQL 中的表与 Excel 文件连接起来。连接发生在 site id 上,但是当从 excel 源读取 id 时,Tableau 会去除前导零(并且 SQL 会保留前导零)。我看到this example 添加前导零作为新的计算字段。但是连接仍在删除行,因为在进行连接时 id 的格式不正确。

如何让 excel 数据源读取带有前导零的列,以便进行连接?

【问题讨论】:

  • 您必须非常小心将 excel 作为来源,它有时太聪明了,不利于任何人的健康。 Excel 通常会自动将看起来像数字的字符串转换为其内部格式的实际数字。默认情况下,它会在打开 CSV 文件时执行此操作,除非您告诉它不要这样做。

标签: tableau-api


【解决方案1】:
  1. 启动 Excel 并选择打开一个新的空白工作簿。
  2. 单击“数据”选项卡并选择“来自文本”。
  3. 浏览到保存的 CSV 文件并选择导入。
  4. 确保选中 Delimited 并单击 Next。
  5. 保留 Tab 作为分隔符,然后单击下一步。
  6. 选择包含前导零数据的列,然后单击 文字。
  7. 对包含前导零的每一列重复。
  8. 点击完成。
  9. 点击确定。

【讨论】:

    【解决方案2】:

    从未听说过或使用过 tableau,但听起来好像有什么东西(jet/ace 数据库驱动程序被用来读取 excel 文件?)正在确定列为数字并将数据解析为数字,丢失前导零

    如果您尝试将它们放回原处让您感到悲伤,我建议您尝试另一个方向;让 sqlserver 将其字符串转换为数字。数字匹配应该比字符串匹配更可靠,只要两个系统处理舍入的方式不同:)

    【讨论】:

      【解决方案3】:

      如果您的 Excel 文件是从 CSV 读取的,并且站点 ID 显示“数字存储为文本”,我认为您可以通过在数据源条目上告诉 Tableau 该字段实际上是一个字符串来解决您的问题。在预览数据源视图中,将“#”(指定数字)更改为字符串,以便 SQL 源和 Excel 源在进行连接之前都是字符串。

      【讨论】:

        【解决方案4】:

        这通常与上述 Excel 存储值的方式有关。我会在 Excel 本身而不是 Tableau 中使用“站点 ID”列的数字格式,并在 Excel 中更改了这两个“文本”。您可以通过将您的 excel 文件导出到 csv 并查看 csv 文件以查看前导 0 是否仍然存在来验证 Tableau 是否可以正确读取前导 0。

        【讨论】:

          猜你喜欢
          • 2014-02-14
          • 2018-04-26
          • 1970-01-01
          • 2020-06-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-10-01
          • 1970-01-01
          相关资源
          最近更新 更多