Teraz używam mongodb.
Mam kolekcję blogpost, a blogpost ma wpisane tagi, które są tablicą, np
blogpost1.tags = ['tag1', 'tag2', 'tag3', 'tag4', 'tag5']
blogpost2.tags = ['tag2', 'tag3']
blogpost3.tags = ['tag2', 'tag3', 'tag4', 'tag5']
blogpost4.tags = ['tag1', 'tag4', 'tag5']
Jak mogę przeprowadzić te wyszukiwania
- zawiera „tag1”
- zawiera ['tag1', 'tag2'],
- zawiera dowolny z [„tag3”, „tag4”]
Z mojego doświadczenia wynika, że w przypadku (2) następujące rozwiązanie jest znacznie szybsze niż to z „$ all”:
ale szczerze mówiąc, nie wiem dlaczego. Byłbym zainteresowany, gdyby ktoś wiedział.
źródło