Это не все для меня ясно, что вопрос, но я буду стараться.
Во-первых, вам нужно будет создать коллекцию с уникальным индексом на date
атрибута:
var db = require("org/arangodb").db;
db._create("dates");
db.dates.ensureUniqueConstraint("date");
После этого вы можете вставить дату, используя последовательность генератора, как это:
// current date
var now = new Date("2015-08-03 23:59:59Z");
// start date
var start = new Date("2015-07-23Z");
var dt = start;
// loop until we have reached the end date
while (dt.getTime() <= now.getTime()) {
// insert document into collection using date from sequence
db.dates.insert({ date: dt.toISOString().substr(0, 10) });
dt = new Date(dt.getTime() + 86400 * 1000);
};
Обратите внимание, что уникальное ограничение будет создавать хэш-индекс. Это гарантирует уникальность значений атрибута date
в коллекции, но не поддерживает сортировку. Если вам требуется сортировать по date
атрибутов или диапазона выполнения запросов на нем, вы должны лучше использовать индекс skiplist на date
:
db.dates.ensureUniqueSkiplist("date");
вместо
db.dates.ensureUniqueConstraint("date");