首页 新闻 搜索 专区 学院

hive中两个表join的问题

0
悬赏园豆:5 [待解决问题]

比如A表中有个id字段,string型。B表中有个ids字段,也是string型,但是内容为逗号分隔的字符串,比如“id1,id2,id3”这样。

现在我想join两个表,条件是A.id出现在了B.ids的字符串中,请问如何实现,谢谢!

 

用Oracle或者mysql等实现也可以

蓦然回首wzf的主页 蓦然回首wzf | 初学一级 | 园豆:197
提问于:2017-05-22 17:51
< >
分享
所有回答(1)
0

mysql的话包含查询就可以,b表ids字段包含a中的id,find_in_set ,hive没用过,应该也有类似的包含查询吧

风行天下12 | 园豆:3862 (老鸟四级) | 2017-05-22 17:53

hive也有find_in_set,但是当我把它写在on之后,比如 on find_in_set(A.id,B.ids)!=0 会出现 Both left and right aliases encountered in JOIN '0'的错误

支持(0) 反对(0) 蓦然回首wzf | 园豆:197 (初学一级) | 2017-05-22 17:56

@蓦然回首wzf: 是不是别名问题呢

支持(0) 反对(0) 风行天下12 | 园豆:3862 (老鸟四级) | 2017-05-22 18:04

@蓦然回首wzf: on find_in_set(a.id,b.ids) !=0 后面应该不能加!=0

支持(0) 反对(0) 风行天下12 | 园豆:3862 (老鸟四级) | 2017-05-22 18:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册