Si vous faites référence au changement dans l'ordre des champs, c'est parce que JSON lui-même définit Object comme une collection de champs, qui n'est pas ordonnée. Mais MongoDB maintient de manière proactive l'ordre des attributs.
MongoDB préserve l'ordre des champs du document suite aux opérations d'écriture sauf dans les cas suivants :
Le champ _id est toujours le premier champ du document.
Les mises à jour qui incluent le renommage des noms de champs peuvent entraîner la réorganisation des champs dans le document.
Modifié dans la version 2.6 : à partir de la version 2.6, MongoDB tente activement de conserver l'ordre des champs dans un document. Avant la version 2.6, MongoDB ne préservait pas activement l'ordre des champs dans un document.
Pourquoi l'ordre des attributs change-t-il ? En effet, la mise en œuvre des collections dans chaque langue est différente. Par exemple, dict en python ne maintient pas l'ordre, donc l'ordre a changé lorsqu'il est transmis au pilote. Si vous souhaitez conserver l'ordre, le pilote fournit une collection ordonnée, telle que SON.
Si vous faites référence au changement dans l'ordre des champs, c'est parce que JSON lui-même définit Object comme une collection de champs, qui n'est pas ordonnée. Mais MongoDB maintient de manière proactive l'ordre des attributs.
Pourquoi l'ordre des attributs change-t-il ? En effet, la mise en œuvre des collections dans chaque langue est différente. Par exemple, dict en python ne maintient pas l'ordre, donc l'ordre a changé lorsqu'il est transmis au pilote. Si vous souhaitez conserver l'ordre, le pilote fournit une collection ordonnée, telle que SON.
en python.