Sort和投影
一、SOrt
默认情况下查询文档时,查询到的内容是按照id值升序排列的。但是id值是根据时间戳和机器码来计算的,所以查询到的内容实际上是按照文档创建时间来排序的,先创建的排列在前。
我们可以使用sort()函数来改变查询到的文档的排序规则。
sort()函数中需要一个对象来指定排序规则,排序对象的格式为{字段1:值,字段2:值…},排序对象中字段的值为1表示升序排列,值为-1表示降序排列,值只能为-1和1两个值中的一个。排序时先根据字段1进行排序,若根据字段1无法排序的文档根据字段2进行排序,依次类推。
limit()、skip()、sort()三个函数的调用顺序影响结果。
sort()的调用语法如下:
db.集合名.find().sort(排序对象)
一、投影
在使用find()函数查询文档时,可以在第find()函数的第二个参数的位置来设置查询结果的投影,投影的意思是只显示自己想要显示的数据,不想要显示的数据就不显示。
投影的具体语法如下:
db.集合名.find(条件对象,投影对象)
投影对象的格式为{字段1:值,字段2:值,…},投影对象中字段的值只能为1或0,为1表示需要显示该字段,为0表示不需要显示该字段。