【问题标题】:Handle a string starting with "00" in SQL在 SQL 中处理以“00”开头的字符串
【发布时间】:2019-02-06 10:10:27
【问题描述】:

我使用 Hadoop/hive,但在处理以“00”开头的字符串数据时遇到问题。

假设“00123”在 Hadoop 表中存储为 string。 我的问题是以下 2 个查询未按原样显示“00123”。而是显示“123”。

select id from DB.TABLE where id="00123" select cast(id as string) from DB.TABLE where id="00123"

我在 Zeppelin 上运行上述查询。 任何人都可以帮忙吗?不确定问题是由 Hadoop 或 Zeppelin 引起的。

【问题讨论】:

  • 您确定id 列没有存储为整数吗?
  • 我认为问题出在 Zeppelin 上。字符串列不会删除前导零。从 CLI 或其他 JDBC 连接器尝试
  • 我确定id 列存储为字符串。我会尝试其他环境。其他数据库没有出现这个问题,所以我认为是数据库的配置问题。

标签: sql hadoop hive apache-zeppelin


【解决方案1】:

此错误已在 ZEPPELIN-3701 中修复(缺少前几个“0”并在结果表中丢失数字准确性)

等待发布 0.8.1。

【讨论】:

  • 谢谢,你节省了我的时间。
猜你喜欢
  • 2012-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-07
  • 1970-01-01
  • 1970-01-01
  • 2012-10-12
相关资源
最近更新 更多