MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Warum sollte dieses db.eval -> array.push für bestimmte Datensätze zweimal ausgeführt werden?

Wegen deiner Sorte:

 db.companies.find({exchange: 'OTC'})

Es handelt sich um eine natürliche Sortierung, und da Ihr Update höchstwahrscheinlich nicht für diese 1.100 vorhanden ist, werden einige Dokumente an das Ende der intern verknüpften MongoDB-Listen verschoben, was die Standardsortierreihenfolge ist. Daher erhalten Sie doppelte Dokumente.

Sortieren Sie Ihre Abfrage mit so etwas wie _id oder was auch immer, einfach so.