zoukankan      html  css  js  c++  java
  • Hive concat函数连接后结果为null

    Hive concat函数连接后结果为null

    concat函数是用来连接字符串的

    使用示例:

    select concat('Hello','World','Java');

    运行结果:

    最近我们在做需求的时候使用concat去拼接地址信息,脚本如下:(ta是我存放地址信息的表别名,地址分为三段存储)

    concat(trim(ta.houseaddress),' ',trim((ta.houseaddress2),' ',trim(ta.houseaddress3))

    一般来说,我们会觉得这个没问题吧,意思就是去掉每部分地址的前后空格,然后每段之间使用空格拼接。

    但是我们在测试的时候就发现有问题耶,有很多地址信息不为空的数据都变为空了....

    开始找原因:

    发现是concat函数在连接null值的时候会将整个结果都会置为null

    例如: 

    select concat('Hello','World','Java',null);

    执行结果:

    修正之后的地址连接信息脚本:

    concat(trim(nvl(ta.houseaddress,'')),' ',trim(nvl(ta.houseaddress2,'')),' ',trim(nvl(ta.houseaddress3,'')))

  • 相关阅读:
    UML建模之用例图关系
    python模块介绍
    Delphi操作XML(七)
    Delphi操作XML(一)
    Delphi操作XML(五)
    Delphi操作XML(六)
    Delphi操作XML(二)
    Delphi操作XML(四)
    Delphi操作XML(三)
    决心好好写cnblogs
  • 原文地址:https://www.cnblogs.com/DFX339/p/11841126.html
Copyright © 2011-2022 走看看