我知道Parse没有实现随机功能,我读过许多关于用Parse选择随机行的文章,但我找不到适合我案例的好方法。
我想在我的应用中获得最近5天内连接的随机用户。以下是我想要进行的操作(使用Swift):
// Calculate the last 5 days
let today = NSDate()
let lastWeek = NSCalendar.currentCalendar().dateByAddingUnit(.Day,
value: -5,
toDate: today,
options: NSCalendarOptions(rawValue: 0))
// Find only the users who were logged in the last 5 days
let findReceiverQuery = PFQuery(className: "_User")
findReceiverQuery.whereKey("updatedAt", greaterThan: lastWeek!)
findReceiverQuery.findObjectsInBackgroundWithBlock({ (users, receiverError) in
if(receiverError == nil) {
let nbUsers = UInt32(users!.count)
if(nbUsers > 0) {
let random_number = Int(arc4random_uniform(nbUsers) + 0)
print(users![random_number])
}
}
})
这样做效果很好但是如果我有超过10,000个结果会发生什么,因为Parse限制了返回到1.000的行数。我可以通过在skip
上使用随机值来解决这个问题吗?
谢谢!