Да, вы можете: взять эту служебную функцию, которую я написал сегодня:
function shangMergeCol() {
tcol= db.getCollection(arguments[0]);
for (var i=1; i<arguments.length; i++){
scol= db.getCollection(arguments[i]);
scol.find().forEach(
function (d) {
tcol.insert(d);
}
)
}
}
Вы можете передать этой функции любое количество коллекций, первое из которых будет целевым. Все остальные коллекции являются источниками, которые должны быть перенесены на целевую.
Вы можете сделать что-то вроде этого:
SELECT
d1.id,
d2.id,
IF(ABS(d1.day1-d2.day1)=1,1,0) +
IF(ABS(d1.day2-d2.day2)=1,1,0) +
IF(ABS(d1.day3-d2.day3)=1,1,0) +
IF(ABS(d1.day4-d2.day4)=1,1,0) AS onecount
FROM days AS d1
LEFT JOIN days AS d2 ON (d1.id = (d2.id + 1))
WHERE d1.id IS NOT NULL AND d2.id IS NOT NULL;
Результат выглядит так:
id id onecount
66 65 3
67 66 2
68 67 0
...
Fiddle: https://www.db-fiddle.com/ е / 7VAG1GTgj6CXiLKkPAHJtf / 1