MongoDB не делает объединений, поэтому ваши первые три шага:
- Захват
t1.id
из MongoDB и поместите его в t1_id
. - Захват
t2.id
изMongoDB и поместите его в t2_id
. - Grab
t3.id
из MongoDB и поместите его в t3_id
.
Затем вы можете использовать new Timestamp()
вместо NOW()
:
db.xyz.insert({
field1: t1_id,
field2: t2_id,
field3: t3_id,
field4: new Timestamp()
});
Если вы действительно работаете с трехсторонним кросс-продуктом, вам придется обернуть вышеприведенное в тройной вложенный цикл примерно так:
for(var i = 0; i < all_t1_ids.length; ++i) {
for(var j = 0; j < all_t2_ids.length; ++j) {
for(var k = 0; k < all_t3_ids.length; ++k) {
db.xyz.insert({
field1: all_t1_ids[i],
field2: all_t2_ids[j],
field3: all_t3_ids[k],
field4: new Timestamp()
});
}
}
}
С MongoDB приходится выполнять множество традиционных СУБД вручную.