Hallo,
ich arbeite mit der noSQL Datenbank mongodb und nutze Morphia als Framework um auf die Datenbank zuzugreifen. Nun benötige ich einen Filter, der mir alle Datensaetze ausgibt, die nicht den String "3" in dem Feld "addresses.city" haben. So, das hört sich alles erst mal so an, als wenn ich hier falsch poste. Aber mongodb bietet so erst mal keine Möglichkeit dies ohne weiteres umzusetzen. Allerdings werden Regexs unterstützt und dies geschieht in Morphia via "Pattern":
Die Methode "filter()" filtert nun nicht die "3" heraus, sondern liefert mir alle Datensaetze mit "3".
Wie kann ich
umdrehen?
ich arbeite mit der noSQL Datenbank mongodb und nutze Morphia als Framework um auf die Datenbank zuzugreifen. Nun benötige ich einen Filter, der mir alle Datensaetze ausgibt, die nicht den String "3" in dem Feld "addresses.city" haben. So, das hört sich alles erst mal so an, als wenn ich hier falsch poste. Aber mongodb bietet so erst mal keine Möglichkeit dies ohne weiteres umzusetzen. Allerdings werden Regexs unterstützt und dies geschieht in Morphia via "Pattern":
Java:
Pattern regExp = Pattern.compile(".*3.*");
long anzahlAlleOhneDrei = dao.createQuery().filter("addresses.city", regExp).countAll();
Die Methode "filter()" filtert nun nicht die "3" heraus, sondern liefert mir alle Datensaetze mit "3".
Wie kann ich
Java:
Pattern regExp = Pattern.compile(".*3.*");