Raadpleeg sort()
definitie.
sort({_id: -1, upvotes_count: -1})
betekent sorteer de _id
sorteer eerst upvotes_count
alleen op volgorde voor die dezelfde _id
posten. Helaas is de _id
is ObjectId
, dat van het 12-byte BSON-type is, geconstrueerd met:
- een waarde van 4 bytes die de seconden vertegenwoordigt sinds het Unix-tijdperk,
- een machine-ID van 3 bytes,
- een 2-byte proces-ID, en
- een 3-byte teller, beginnend met een willekeurige waarde.
Het is moeilijk om dezelfde ObjectId
. te krijgen . Namelijk de _id
van elk record moet uniek zijn in dit document. Als gevolg hiervan worden de resultaten van uw testcodes gewoon gerangschikt op _id
besch.
Hier is een voorbeeld,
+---------+---------------+
| _id | upvote_count |
+---------+---------------+
| 1 | 5 |
| 4 | 7 |
| 3 | 9 |
| 4 | 8 |
Het resultaat van sort({_id: -1, upvotes_count: -1})
zou moeten zijn
+---------+---------------+
| _id | upvote_count |
+---------+---------------+
| 4 | 8 |
| 4 | 7 |
| 3 | 9 |
| 1 | 5 |
De upvote_count
zou worden gesorteerd op dezelfde _id
.
In dit geval echter. Er is op dezelfde _id
in dit geval.
+---------+---------------+
| _id | upvote_count |
+---------+---------------+
| 1 | 5 |
| 4 | 7 |
| 3 | 9 |
| 2 | 8 |
Het resultaat van sort({_id: -1, upvotes_count: -1})
zou moeten zijn
+---------+---------------+
| _id | upvote_count |
+---------+---------------+
| 1 | 5 |
| 2 | 8 |
| 3 | 9 |
| 4 | 7 |