0%

mongodb随机返回N条结果

mongodb随机返回N条结果:

用$sample (aggregation)方法,具体命令为:
db.<数据库>.aggregate( [ { $sample: { size: N } } ] ) N为条数

异步携程查询

class Image_Pust_():
#### 文档地址 https://www.cnblogs.com/aduner/p/13532504.html
client = motor.motor_asyncio.AsyncIOMotorClient('数据库链接') # 使用链接访问
sss = client.sss # client.数据库集合
test1 = sss.test1 # 数据库

async def Rand_find(self, document=None):
c = Image_Pust_().sss.test1
# async for document in c.find():
# print(document)
a = c.aggregate([{"$sample": {"size": 15}}]) # 查询15条数据
return [i async for i in a] # 返回数据