sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur man $ställer sub-sub-array-objekt i MongoDB

Om du känner till indexet i arrayen kan du komma åt arrayelementet direkt med hjälp av punktnotation.

update(
{ _id: ObjectId(xxxx) },
{ $set: { 'columns.0.panels.0.top' : 125}}
)

Se till att du omsluter den punktmärkta sökvägen inom citattecken som en sträng.

Redigera:

För att ge mer detaljer om hur detta skulle kunna fungera dynamiskt, ska jag ge ett exempel i PHP:

$action = array("columns.$colNum.panels.$panelNum" => $newValue);

Ja, det finns positionsoperatören , men det

  1. $nära kräver geojson punkt, givet geojson punkt

  2. I mongodb-go-driver, hur man samlar in/avmarschallar BSON i en struktur

  3. MongoDB skiftlägesokänslig fråga på text med parentes

  4. Fråga för att konvertera en array till en karta över dokument med n attribut