MongoDB里做表间关联

本文介绍了如何在MongoDB不支持join的情况下,利用免费的集算器esProc配合MongoDB进行表间关联计算。通过一个示例展示了如何从MongoDB的orders和employee集合中,根据sellerid和eid进行关联查询,过滤出employee状态为California的订单信息。这种方法适用于数据量较大的情况,避免了内存溢出,并且支持动态调整查询条件。
摘要由CSDN通过智能技术生成

   MongoDB不支持join,其官网上推荐的unity jdbc可以把数据取出来进行二次计算实现join运算,但收费版才有这个功能。其他免费的jdbc drive只能支持最基本的SQL语句,不支持join。如果用Java等编程语言将数据取出后实现join计算,也比较复杂。

   用免费的esProc配合MongoDB,可以实现join计算。这里通过一个例子来说明一下具体作法。

   MongoDB中的文档orders保存了订单数据,employee保存了员工数据。如下:
   MongoDB shell version: 2.6.4

   connecting to: test

    > db.orders.find();
    { “_id” : ObjectId(“5434f88dd00ab5276493e270″), “ORDERID” : 1, “CLIENT” : “UJRNP
    ”, “SELLERID” : 17, “AMOUNT” : 392, “ORDERDATE” : “2008/11/2 15:28″ }
    { “_id” : ObjectId(“5434f88dd00ab5276493e271″), “ORDERID” : 2, “CLIENT” : “SJCH”
    , “SELLERID” : 6, “AMOUNT” : 4802, “ORDERDATE” : “20

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值