Ich verwende CouchDB zum Speichern von Daten über Ereignisse. Jedes Ereignis hat Startdatum / -uhrzeit und Enddatum / -zeit. Ich möchte jetzt eine Ansicht erstellen, mit der ich eine Liste aller Ereignisse anzeigen kann, die zu einem bestimmten Datum / Zeitpunkt stattfinden. Aber die Ereignisse haben keine einzelnen Daten, sie können eher über mehrere Tage reichen.
Jetzt weiß ich nicht, wie ich das in meiner Sichtfunktion wiedergeben kann. Leider benötige ich Granularität auf Minutenebene, daher ist die Ausgabe eines Schlüssels für jede Minute möglicherweise keine gültige Lösung. Wie kann ich das tun?
Vielen Dank im Voraus!
Ok, hier ist sowieso eine Lösung! Ich habe gerade mit Jan (Lehnardt) von CouchDB gepingt und er hat mir gesagt, dass ich emit()
mehrmals innerhalb einer Map kann. Etwas, das ich bis jetzt nicht kannte.
Um es mir leichter zu machen, nehme ich an, dass Ihre End- und Startzeit bereits TIMESTAMP-Werte sind. Wenn nicht, müssen Sie sie in Ihrer Karte konvertieren oder allgemein zu ihnen wechseln.
Ich gehe auch davon aus, dass ein Ereignis zu einer vollen Minute beginnt (z. B. 16:51:00
) und nicht bei 16:51:23
. Gleiches am Enddatum.
Beispieldokument:
%Vor%Hier ist die Karte:
%Vor% Dann sollte es einfach sein, mit startkey
und endkey
abzufragen. Sie könnten hier möglicherweise ein _list
hinzufügen.
Tags und Links couchdb