gpt4 book ai didi

sql-server - 获取 cfquery 中返回的特定行数

转载 作者:行者123 更新时间:2023-12-03 19:34:08 24 4
gpt4 key购买 nike

我知道您可以计算查询中返回的项目数量,但是...问题:是否有可能获得具有特定值的行的 recordcount,例如...

<cfset totalReturned = myquery.recordcount>

<cfset totalReturnedComplete = myquery.recordcount (where status = "Complete")>

我知道上面的代码行不通,但我正在寻找类似上面代码的东西。

最佳答案

您有几个选择。您可以使用在 status = "Complete" 时递增的计数器遍历查询,或者您可以使用查询的查询:

<cfquery name="mynewquery" dbtype="query">
SELECT status, COUNT(*) AS status_cnt
FROM myquery
GROUP BY status
</cfquery>

但是,由于您使用的是 SQL Server,另一种方法是修改您的初始查询(假设您有权执行此操作),以便在 status = "Complete" 返回,使用 SUM() 作为窗口函数:

<cfquery name="myquery" datasource="mydatasource">
SELECT id, status
, SUM(CASE WHEN status = 'Complete' THEN 1 ELSE 0 END) OVER ( ) AS complete_cnt
FROM mytable
</cfquery>

<cfset totalReturned = myquery.recordcount />
<cfset totalReturnedComplete = myquery.complete_cnt />

See SQL Fiddle here.

关于sql-server - 获取 cfquery 中返回的特定行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30224258/

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