gpt4 book ai didi

sql - 如何选择 TOP x 但仍获得整个查询的 COUNT?

转载 作者:行者123 更新时间:2023-12-02 03:42:17 24 4
gpt4 key购买 nike

我正在编写一个网页,根据用户指定的过滤条件以交互方式过滤结果。我只想从 SQL 返回前 20 行,但我想知道有多少行符合条件(计数)。我希望能够告诉用户:“这里是符合您的条件的前 20 行,顺便说一句,还有 2,000 行我没有在此处显示”。

我知道我可以简单地运行查询两次,但是 EWWWW 这既昂贵又浪费。如何在不给数据库带来过多负担的情况下实现我想要的目标?

最佳答案

您可以使用COUNT(*) OVER()

SELECT TOP 20 *, 
COUNT(*) OVER() AS TotalMatchingRows
FROM master..spt_values
WHERE type='P'
ORDER BY number

执行两个查询可能会更有效,但是特别是如果您有可用于确定匹配行数但不覆盖整个 SELECT 列表的较窄索引。

关于sql - 如何选择 TOP x 但仍获得整个查询的 COUNT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7662800/

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