首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有一种方法可以判断活动记录查询是否达到其限制

问是否有一种方法可以判断活动记录查询是否达到其限制
EN

Stack Overflow用户
提问于 2013-01-08 02:43:06
回答 2查看 103关注 0票数 1

给出以下查询:

代码语言:javascript
复制
Cars.where(color: red).limit(5)

有没有办法判断是否达到了极限。假设有6辆红色汽车,我是否需要做一个单独的查询来计算红色汽车的总数?

基本上,我试图向用户发送一条消息,让他们知道搜索是有限的,因为达到了允许的最大结果数。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-08 02:52:07

将其组合到一个查询中的唯一方法是执行限制(6)。如果大小为6,则删除最后一个元素,并记录它们的结果更多。

或者,执行单独的查询颜色(颜色:红色).count。虽然这将执行单独的SQL查询,但对于数据库来说,count查询有时非常快。

票数 3
EN

Stack Overflow用户

发布于 2013-01-08 03:11:57

对你的问题的直接回答是,你不能在一次查询中得到这些信息。您必须运行两个查询:一个用于返回有限集,另一个用于查找总数。

只有当您查询第一页结果(偏移量为0)并且返回的结果数小于限制值(例如,您将限制设置为5,但返回4个结果)时,才不需要执行此操作。

示例代码将如下所示:

代码语言:javascript
复制
    limit = 5
    cars_scoped = Cars.where(color: red)
    cars = cars_scoped.limit(limit)
    cars_count = cars.length < limit ? cars.length : cars_scoped.count
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14202056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档