sjtu448651346 2019-10-29 21:10 采纳率: 50%
浏览 3291
已结题

hive 如何判断字段名是否存在,或者字段总数?

hive中如何判断字段名是否存在,或者字段总数为多少?

如果不能回答,下面的问题场景有好的解决方案也可以采纳

问题场景:
目前问题是这样的:公司hive库需要新增一个字段,但是数据部的同事为了保证hive代码在公司新增数据字段后仍能正常运行不会报错,需要自动判断是否添加了新字段(或者是判断字段数目为x or x+1),这样就能用if执行2个逻辑。

为什么我们不直接创建一个新表呢? 因为要保证数据连续性,不能在某天中断了(跑一次全量表数据公司服务器要跑一个月,历史数据非常庞大)

  • 写回答

3条回答 默认 最新

  • bj_0163_bj 2019-11-05 17:54
    关注

    在hive sql 里面好像直接判断字段个数有点困难,
    原表为tmp1,
    可以事先创建一个相同表建构的数据
    create table tmp2 like tmp1;
    然后取一条数据出来union all

    create table tmp3 as
    select * from tmp1 limit 1
    union all
    select * from tmp2
    如何报错,就说明表结构有变化。

    当然,union all 那步要加校验,进行异常处理

    评论

报告相同问题?

悬赏问题

  • ¥15 Java中消息和缓存如何使用
  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路