非常抱歉我没有正确理解您的需求。如果要在同一个查询语句中查询出两个不同条件下的count值,您可以使用CASE语句来区分计数的条件。以下是修改后的示例代码:
SELECT
d.name,
org.name,
c.BILLTYPENAME,
COUNT(DISTINCT CASE WHEN a.actiontype = 'sscapprove' OR a.actiontype = 'sscreject' THEN a.billno END) AS count_distinct,
COUNT(CASE WHEN a.actiontype = 'sscreject' THEN a.billno END) AS count_total
FROM
ncc.ssctp_flowpath a
LEFT JOIN ncc.bd_billtype c ON c.pk_billtypeid = a.pk_tradetype
LEFT JOIN ncc.ssctp_workinggroup d ON d.pk_workinggroup = a.pk_sscgroup
LEFT JOIN ncc.org_orgs org ON org.pk_org = a.pk_org
WHERE
a.operatetime >= '2023-01-01 00:00:00'
GROUP BY
d.name,
org.name,
c.BILLTYPENAME
在上述代码中,通过CASE语句将计数的条件区分开来,并使用COUNT函数进行计数。其中,COUNT(DISTINCT CASE WHEN a.actiontype = 'sscapprove' OR a.actiontype = 'sscreject' THEN a.billno END) 统计单号去重的数量,COUNT(CASE WHEN a.actiontype = 'sscreject' THEN a.billno END) 统计不去重的数量。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。