gpt4 book ai didi

sql - 选择前 1000 个,但知道有多少行?

转载 作者:行者123 更新时间:2023-12-04 14:31:44 25 4
gpt4 key购买 nike

SQL Server 2005

我在数据库中有 1000 万行,并运行了一个选择(有很多“位置”和关节......非常复杂)。结果显示在网格中(想想 goolge 结果),因此,用户不可能使用超过 1000 个结果。

所以我用 TOP 1000 限制了我的 SQL。

问题 : 用户仍然想知道他的搜索有5432个结果。

我可以在不付出代价的情况下获得该信息吗(或者换句话说,仍然可以获得“前 1000 名”给我的速度优势?)

假设
- 假设 TOP 1000 带来了 中的 1000 个100K 行。因此,即使是移动 100K 的网络价格也可能是一个问题。

结论
天下没有免费的午餐!你可以获得优雅的方式(接受的答案),但它仍然需要更昂贵的操作(即计算所有结果)。
在现实生活中,我将采用 2 SQL 方法,一种返回前 1000 行进行显示,另一种是异步并使用计数(*)结果更新一些 AJAX 面板,这将花费更长的时间到计算机

最佳答案

SELECT TOP 1000 x, y, z, COUNT(*) OVER () AS TotalCount
FROM dbo.table

关于sql - 选择前 1000 个,但知道有多少行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/386795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com