Mongo Hadoop Connector使用过程中,hive查询where不可以使用等号"="

背景

在使用Mongodb Hadoop Connector的时,采用了Mongodb-based方式,也就是hive直接在mongo上进行查询,在测试的时候,遇到了一个问题,那就是在进行查询的时候,where后面不可以使用“=”。

示例

首先在Mongodb中插入两条测试数据


在hive下创建表,使用如下语句

create external table user_test(id string,name string)
stored by 'com.mongodb.hadoop.hive.MongoStorageHandler'
with serdeproperties('mongo.columns.mapping'='{"id":"_id","name":"name"}')
tblproperties('mongo.uri'='mongodb://mongo_user:mongo_pwd@mongo_host:mongo_ip/mongo_db.user_test');

下面开始直接演示,如下图所示

从上图可以明显看出,“=”并不能获得期望的结果,可以通过使用“in”或者“like”来获取期望结果。同时,“==”并不会报错,而且效果与“=”一致,都是错误的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值