sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB dropIndex()

Der er flere måder at slette et indeks på i MongoDB, hvoraf den ene er at bruge dropIndex() metode.

Det er ret nemt at bruge - bare send navnet på indekset eller dets definitions-/specifikationsdokument. Hvis det er et tekstindeks, kan du kun angive indeksnavnet.

Eksempler på indekser

Antag, at vi har en samling kaldet bars . Vi kan bruge getIndexes() for at se, hvilke indekser den har:

db.bars.getIndexes()

Resultat:

[
	{
		"v" : 2,
		"key" : {
			"_id" : 1
		},
		"name" : "_id_"
	},
	{
		"v" : 2,
		"key" : {
			"location" : "2dsphere"
		},
		"name" : "location_2dsphere",
		"2dsphereIndexVersion" : 3
	},
	{
		"v" : 2,
		"key" : {
			"name" : 1
		},
		"name" : "name_1",
		"hidden" : true
	}
]

Vi kan se, at der er tre indekser på bars samling.

  • Det første indeks er på _id Mark. MongoDB opretter et unikt indeks på _id felt under oprettelsen af ​​en samling. Du kan ikke slette dette indeks.
  • Det andet indeks er et 2dsphere-indeks på location felt.
  • Det tredje indeks er på name Mark. I dette tilfælde er det tilfældigvis et skjult indeks (det har "hidden" : true i sin specifikation).

Slip et indeks efter navn

Her er et eksempel på at slette et indeks ved at overføre dets navn til dropIndex() metode:

db.bars.dropIndex("location_2dsphere")

Output:

{ "nIndexesWas" : 3, "ok" : 1 }

Dette fortæller os, at indekset blev slettet.

Slip et indeks efter dets specifikation

Her er et eksempel på at slette et indeks ved at sende dets specifikationsdokument til dropIndex() metode:

db.bars.dropIndex( { "name" : 1 } )

Output:

{ "nIndexesWas" : 2, "ok" : 1 }

Vi kan se, at dette indeks også blev droppet.

Du vil huske, at dette er indekset, der blev skjult. Du kan slippe skjulte indekser uden problemer (du behøver ikke at vise dem, før du slipper dem).

Tjek resultaterne

Lad os køre getIndexes() igen for at se resultaterne:

db.bars.getIndexes()

Resultat:

[ { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_" } ]

Denne gang er der kun ét indeks – standard _id indeks.

dropIndex() metoden er en indpakning omkring dropIndexes kommando.

MongoDB-dokumentation

Se MongoDB-dokumentationen for mere information om dropIndex() metode.


  1. MongoDB :Indekser rækkefølge og forespørgselsrækkefølge skal matche?

  2. Skriv din første rådgiver

  3. Sådan sorteres mongodb med pymongo

  4. MongoDB:mangler hukommelse