u011856283
你好杰米
采纳率95%
2018-03-16 02:31 阅读 910
已采纳

今天不问技术,问个需求该怎么解决,关于解析excel表格的,急

5

【java】这么个需求,我们做数据分析,有好多B端商家,会给我们提供主要包含姓名、手机号的excel表格信息。
但是每个B端商家提交的表格格式不一样,列数和列名不一样,有可能sheet和sheet之间都不一样。
数据库使用hive,现在需求是,必要的字段我们要拿出来存好,但是其余的个性化字段,比如有的公司会有公qq号这个字段,我们也要存起来,为了必要的时候拿出来查(虽然也可能不用),但是要存,cto说让用户自己去说明下,那些字段使我们定的那些必须的字段,其余的我们在表里新建字段存起来。

总结:不同excel表格上传,我们要在所有信息不损失的情况下,保存到数据库里,保证必要字段例如手机号的完整性
提问:我怎么去让用户给我指定这丫哪丫,怎么处理有可能会不断增加的个性化字段,还得保证再次上传一个个性化字段的时候,如果之前有了我追加,没有在新建字段

求——思——路

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

5条回答 默认 最新

  • 已采纳
    zhaokun900124 zhaokun900124 2018-03-16 07:10

    必要的信息以字段保存,非必要的可以用JSON格式存到表中的一个字段里,然后需要用时再解析出来

    点赞 评论 复制链接分享
  • lovehehe87 lovehehe87 2018-03-16 03:06

    不清楚hive数据库,以oracle数据库为例提供一下思路
    1、针对必要的字段单独建表,统一存储存储方式同Excel的格式,比如id、姓名、手机号等字段
    2、针对扩展字段,另外建表,按key-value的方式建表,即id,key,value
    两张表可以通过id关联,这样数据存储的时候,统一的数据(经常用的)和扩展的(如QQ号)都可以存储

    点赞 3 评论 复制链接分享
  • qq_37524684 子幽 2018-03-16 03:17

    单说excel表的格式,你可以将必须的字段的表头格式发给商家啊!后面扩展字段不要求也可以,或者你定好完整的表头格式,说明那些必填,那些选填,这样不行吗

    点赞 评论 复制链接分享
  • han_yang215 han_yang215 2018-03-16 08:09

    我建议你用ETL工具 整合在一张临时表里面做sql开发。etl工具kettle spoon。

    点赞 评论 复制链接分享
  • jinyush jinyush 2018-03-16 15:20

    如果数据量大,可以用VB建立一个自动分析软件,重新生成一个EXCEL表

    点赞 评论 复制链接分享

相关推荐