mongoDB是不支持多表查询的,而nodeJS又是异步的,导致多表查询比较麻烦。
一个十分简陋的多表查询方法(只有一个关联条件):先从第一个collection中查询得到数据,将其中两个collection关联的field从中取出来并去重,通过$in在第二个collections中查询。
在写数组去重的时候,发现js语言特性写这种函数比C++轻松太多。
varusers=[], uhash={};//uhash是辅助用hash表
for(vari=0, len=data.length; i<length;++i){
if(!uhash[data[i].email]) {//只有hash表中不存在再插入
uhash[data[i].email]=true;
users.push(data[i].email);
}
}
hash可以非常方便的帮助完成一些辅助数组的任务。
dead_horse 2011-09-14 01:42 发表评论原文链接: https://www.cnblogs.com/dead-horse/archive/2011/09/14/2272578.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/32253
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!