mongodb - avancerede indeksering

, overveje følgende dokument af brugere, indsamling:,, ("adresse" ("by": "los angeles", "medlemsstat": "californien", "pincode": "123"), "mærker" ["musik", "- -", "blogs", "navn": "tom"), benzamin ovennævnte dokument indeholder en adresse, sub - dokument, og et hundetegn system., indeksering array - områder: hvis vi ønsker at søge bruger dokumenter baseret på hans hundetegn.for dette, vil vi skabe et indeks på et system til indsamling.at skabe et indeks på system skaber på sin side separat indeks angivelser for hver enkelt af dets områder.så i vores sag, når vi skaber et indeks på et system, der vil blive oprettet særskilte fortegnelser for sine værdier, musik, cricket og blogs.for at skabe et indeks på et system, der anvendes følgende kode:,,> db. brugere. ensureindex ({"mærker": 1}), efter at de indeks, kan vi søge om et område af indsamling, som denne:,,> db. brugere. finde ((tags. "cricket"}), for at kontrollere, at en indeksering anvendes, anvendes følgende, forklare, kommando:,,> db. brugere. finde ((tags: "cricket"}). explain(), ovennævnte forklare kommando resulterede i "markør": "btreecursor tags_1", der bekræfter, at en indeksering er anvendt.,, indeksering sub - dokument områder:,, hvis vi ønsker at finde dokumenter baseret på by, stat og pincode områder.da alle disse områder er en del af adresse under nummer område vil vi skabe indeks på alle områder af sub - dokument.for at skabe indeks på alle tre områder af sub - dokument, anvendes følgende kode:,,> db. brugere. ensureindex ({"adresse. by": 1 "adresse. medlemsstat": 1 "adresse. pincode": 1}), når indekset er skabt, kan vi søgen efter nogen af de under nummer områder af dette indeks som følger:,,> db. brugere. finde ({"adresse. by": "los angeles"}), huske, at forespørgslen udtryk har til at følge rækkefølgen for de indeks, der er specificeret.- indekset skabt over ville støtte følgende spørgsmål:,,> db. brugere. finde ({"adresse. by": "los angeles", "adresse. medlemsstat": "californien"}), vil det også støtte, følgende spørgsmål:,,> db. brugerne finde ({". adresse. by": "los angeles", "adresse. medlemsstat": "californien", "adresse. pincode": "123"}),



Previous:
Next Page: