【问题标题】:Hive Create table - When to use VARCHAR and STRING as column data typeHive 创建表 - 何时使用 VARCHAR 和 STRING 作为列数据类型
【发布时间】:2017-10-11 16:05:36
【问题描述】:

我正在尝试创建一个 HIVE 表。我不确定我们何时使用 VARCHAR 以及何时使用 String。 如果我们使用 VARCHAR 那么我们是否必须像在 RDBMS 中定义的那样定义长度为 VARCHAR(10) 请帮忙

【问题讨论】:

    标签: sql hive type-conversion hiveddl


    【解决方案1】:

    VARCHAR 在 Hive 0.12.0 中引入,用于更多符合 SQL 的行为,例如 SQL 字符串比较语义、最大长度等(参见 HIVE-4844)。

    Varchar 类型使用长度说明符(介于 1 和 65355 之间)创建,该说明符定义字符串中允许的最大字符数。如果要转换/分配给 varchar 值的字符串值超过长度说明符,字符串会被静默截断。
    还有一个限制:非泛型 UDF不能直接使用 varchar 类型作为输入参数或返回值。 看这里:wiki

    STRING 没有这样的限制。 STRING 的最大长度为 2GB

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-29
      • 2022-08-11
      • 1970-01-01
      • 1970-01-01
      • 2020-02-08
      • 1970-01-01
      相关资源
      最近更新 更多