我正在查询SQL数据库,但由于某些原因,结果项会随机返回。这是我的密码:
for items in searchFriendEmailArrayNew {
let query = table.query(with: NSPredicate(format: "email == '\(items)'"))
query.selectFields = ["isriding"]
query.read { (result, error) in
if let err = error {
print("ERROR ", err)
} else if let items = result?.items {
for item in items {
let theItem = item["isriding"] as! Bool
let newItem = String(theItem)
self.searchFriendIsRidingArray.add(newItem)
loopCount = loopCount+1
if loopCount == self.friendsArray.count {
self.tableView.reloadData()
self.activityIndicator.isHidden = true
self.activityIndicator.stopAnimating()
}
}
}
}
}
searchFriendEmailArrayNew是一个电子邮件地址数组,因此当我查询数据库表时,它会使用电子邮件来查找该用户。数组始终保持一致且顺序相同:
查询总是按照这个顺序进行的。
然后,我查询用户的所选字段,在本例中,我查询的是“isriding”字段。此字段是返回true或false的布尔值。
然而,当我进入“for item in items”时,结果以随机顺序返回。例如,假设user1'is riding=true',但所有其他用户都为false,则返回的项目可能如下所示:
如果我再次运行代码,它可能如下所示:
有人能告诉我们为什么他们会以随机顺序返回,即使在查询表时,它总是以特定的顺序进行查询。
感谢任何帮助。
您可能需要在构建查询时指定一个顺序,否则结果的顺序可能不会与您提供的顺序相同。
可以通过在语句中使用“ORDERBY”子句来强制查询的顺序。SQL数据库实际上并不了解您将数据放入的顺序,也不了解您将数据按给定顺序存储的顺序。这意味着您需要告诉SQL项目的顺序。
为什么SQL查询的结果没有按照我期望的顺序返回?
问题内容: 我有一堆应聘者,他们有一些或多个工作,每个人都在公司工作,并且使用了一些技能。 坏的ascii艺术如下: 这是我的数据库: 。 。 。 。 这是我对查询的尝试(请注意,我打算将通配符更改为字段名称;我只是想使某些功能生效): HediSql说 查询出了什么问题?我希望从不良的ascii艺术中可以清楚地知道我要达到的目标。 (此外,它对我连接表的顺序是否有任何速度差异?我将担心新的MyS
我有以下表格结构: 1-课程(course_id、course_nam、语言、course_price、create_date、average_rating、course_description、certifica_price、course_creator_id) 2-学生(学生证、钱包) 3-折扣(折扣id、折扣课程id、允许的许可课程id、开始日期、结束日期、百分比) 4-报名(student
如果在表中插入了项,然后我编写了一个查询,例如,为什么结果不是按照我期望的顺序?
当我执行普通Select时,返回正确的结果,但当我执行Select for DB uptime时,它始终返回相同的第一个结果。我确实检查了Postgres日志,我看到select被执行了。
我使用JavaScript有这个条件,我有两个文本框,我将在其中比较输入(输入是数字)。条件是当textbox 2小于textbox 1时,它将显示一条警告消息,说明textbox 2必须大于textbox 2。所以当输入是这样的时候 为什么当它将2与9进行比较时,它不会发出任何警报? 以下是我的情况: