2010-12-10 8 views
0

class Person { @Persistent private List tags = Arraylist() }mehrwertig Eigenschaft Abfrage in GAE

Ich möchte eine Person, die die Benutzerabfrage lassen, basierend auf seinen/ihren Tag, so hatte ich meine Abfragefilter wie folgt aus:

tags.contains (tagValue1)

und wenn der Benutzer für mehrere Tags suchen wollen, würde ich nur auf dem Filter hinzufügen, damit, wenn der Benutzer für 3-Tags sucht, dann die Abfrage wäre

tags.contains (tagValue1) & & tags.contains (tagValue2) & & tags.contains (tagValue3)

Ich denke, dieser Ansatz falsch ist, weil der Datenspeicher dann einen Index, der die Tags Eigenschaft haben, haben muss drei mal ... und wenn der Benutzer nach mehr als 3 Tags gleichzeitig sucht, ist es kaputt.

Was ist der richtige Weg, dies zu tun? Habt ihr Vorschläge?

Antwort

0

nicht beantworten kann auf die Besonderheiten, wie GAE/J Plugin-Prozesse, die aber eine geringfügig bessere Abfrage

tags.contains (theTag) & & (theTag == tagValue1 || theTag == tagValue2 würde | | theTag == tagValue3)

Also "theTag" ist eine Variable.