问题标签 [sql-limit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 超过一定限制时没有 MySQL 记录返回?
我有以下查询,它返回 250 条记录:
当我执行上述操作时,即使总共有 250 条记录,我也看不到任何记录。LIMIT
当我将 更改为时,它才开始返回记录LIMIT 197,10
,然后我看到 1 条记录。
为什么会这样?
sql - 仅返回将返回一组行的选择的一行
我有一张像这样的桌子:
我需要做一个查询,只返回第一个遇到的is_available
设置为假的行。
mysql - 如何根据关联表中的值更新多个列?
有两个名为masters和versions的表。版本表保存主表在不同时间点的条目。
保证每个主条目至少有一个 版本条目。
这些表也可以在这个SQL Fiddle中找到。可以选择每个主
记录
的最新版本,如主记录示例所示:2
如何在一个命令中使用最新版本更新masters表的每条记录?我想覆盖和列的值。请注意, versions表中还有一些其他列在masters表中不存在,例如. name
added_at
notes
可以使用 a 完成更新,JOIN
以便在较大的表上快速执行吗?
mysql - SELECT * 与 SELECT * LIMIT(性能)
t1
我在一个有列的表中有超过 10K 条记录uid
。
我uid='xyz'
现在有 5 条记录,其中 2 条方法更好
或者
*只有 5 条 uid 为 xyz 的记录 *
android - sqlite 是否支持为每个查询读取一定数量的行?
我的 Android 应用程序有一个活动来显示 SQLite 数据库中的数据。db 表可能包含大量行。出于性能原因,我想一次从 db 加载 20 行,当用户向下滚动 listview 到最后时,读取接下来的 20 行。
所以我想使用这样的 SQL 语句:
我只是想知道 SQLite 是否支持这种"count=20"
功能来读取最多 20 行的查询。如果支持,确切的语法是什么?
hql - HQL如何限制每个组中的记录数?
场景如下:表record
如下:
HQL: 的结果select * from record where B = 1 and C < 3 limit 2
是:
但我想要的是:
那是:限制每个条件下的记录数,而不是限制最终返回的记录数。
我真的需要在蜂巢中完成此操作。谁能给我一个想法?非常感谢!
总结 这是解决这个问题的好方法: http ://ragrawal.wordpress.com/2011/11/18/extract-top-n-records-in-each-group-in-hadoopive/
sql - WHERE 子句保证奇异值时的唯一聚合函数
鉴于以下情况:
我想选择A1
给定的最大值A2
和A3
值,并让这些值 (A2
和A3
) 也出现在返回的行中(例如,这样我就可以在连接中使用它们,因为下面的 SELECT 用于子查询)。
WHERE
鉴于 A2 和 A3 在子句中是硬编码的,因此能够执行以下操作似乎是合乎逻辑的:
然而,PostgreSQL(我也怀疑其他 RDBM)对此犹豫不决,并请求 A2 和 A3 的聚合函数,即使它们的值是固定的。所以相反,我要么必须做一个:
或:
我不喜欢第一个替代方案,因为我可以使用MIN
它并且它仍然可以工作,而第二个替代方案将位置参数的数量增加一倍,以便在从编程语言界面使用时提供值。理想情况下,我会想要一个UNIQUE
聚合函数,它可以断言所有值都相等并返回该单个值,或者甚至是RANDOM
一个随机返回一个值的聚合函数(因为我从WHERE
子句中知道它们都是相等的)。
有没有一种惯用的方式在 PostgreSQL 中编写上述内容?
mysql - MySQL:你能指定一个随机限制吗?
有没有办法在 SQL(MySQL)中随机化一个限制数?
我想做的是在查询中获得随机数量的结果,以便在插入子查询中使用,而无需任何服务器端脚本。我希望能够作为假设说明运行的查询是:
当然这不起作用,但有没有另一种方法来随机化限制数?有很多随机化一组有限结果的例子,但我在网上找不到任何关于设置随机限制的信息。
php - 在 Union All 的子查询中排序、限制和偏移
我有下表包含大约。70 万条记录:
现在我想查询它并从中获得 10 个结果,如下查询所示:
这个查询需要 196 秒,所以很明显我需要在几个子查询中放置约束( ORDER BY
, )。LIMIT
不过,我对如何添加它们感到困惑,我LIMIT
使用以下 PHP 动态选择:
当我使用页面系统来显示结果时,这意味着我想要一些适用于:
- 约 700K 行的结果 0 到 9
- 约 700K 行的结果 10 到 19
- 等等
- 结果 699990 到 699999 从 ~700K 行
我知道,如果您只想要结果集的尾部,假设您想要 20 条记录。然后每个子查询都需要获取20 * [subquery_count]
记录,以确保您永远不会丢失记录。
但是,既然还需要考虑偏移量,我将如何做呢?
mysql - 如何阻止 LIMIT 减慢查询速度?
我创建了一个包含 100k 行的测试表。此查询的执行时间:
是0.032s
。如果我GROUP BY
为索引为 的整数列添加语句,Normal,BTREE
则查询的执行时间:
解释输出:
是0.073s
。由于 ,执行时间加倍GROUP BY
,但我假设这是正常的?我的问题是为什么要添加LIMIT
到查询中,如下所示:
解释输出:
将执行时间增加到0.301s
? 这是超过 4 倍的减速。
我对 SQL 非常缺乏经验,所以这可能是完全正常的,但对我来说,限制返回的行数会大大降低查询速度,这似乎违反直觉。
问题:
- 这是正常的吗?
- 有什么办法可以阻止 LIMIT 减慢查询速度?