我有3个集合,我想执行类似于sql查询的查询,如
SELECT fp.userId, fp.orderId, productId, fp.request_Payment_ChargeTotal,
fp.createdOn, u.referrerSite, COUNT(*),
sum( fp.request_Payment_ChargeTotal ) AS total
FROM `firstdata_payment_webservice` fp, userlicenses ul, users u
WHERE u.userId = ul.userId
AND fp.response_TransactionResult = 'APPROVED'
AND fp.request_Payment_ChargeTotal > 0
AND ul.orderId = fp.orderId AND fp.createdOn
BETWEEN cast( '2011-09-10' AS DATETIME )
AND cast( '2011-09-20' AS DATETIME )
GROUP BY u.referrerSite, productId WITH ROLLUP我怎样才能在mongodb中做类似的操作。
发布于 2011-10-19 13:52:52
那么,应用“联接”并不是MongoDB的目的。所以你必须用不同的方式构造你的数据。
db.users
db.orders
)
使用MapReduce,您可以通过查询orders表来计数其他内容。如果您需要客户的数据,可以在另一个查询中使用您要寻找的用户ObjectIds数组进行查询。
https://stackoverflow.com/questions/7500493
复制相似问题