You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现带条件的distinct计数并判断商品是否有同集群其他门店

SQL实现方案

你可以基于原有统计逻辑,先计算每个product+cluster分组的门店数,再按product维度聚合判断即可,参考代码如下:

WITH cluster_shop_stats AS (
    -- 原有统计逻辑:计算每个产品、集群对应的门店数
    SELECT product,
           cluster,
           COUNT(DISTINCT shop_id) AS shops
    FROM a
    WHERE site = 1 
    GROUP BY product, cluster
)
SELECT 
    product,
    CASE WHEN MAX(shops) > 1 THEN 'Yes' ELSE 'No' END AS other_shops
FROM cluster_shop_stats
GROUP BY product;

逻辑说明

  • 内层CTEcluster_shop_stats复用了你已有的统计逻辑,先得到每个产品对应每个集群下的门店数量
  • 外层按product维度聚合,只要该产品下存在任意一个集群的门店数大于1,聚合函数MAX(shops)的结果就会大于1,此时返回Yes;如果该产品所有集群的门店数都小于等于1,则返回No,和你要求的输出格式完全匹配。

内容的提问来源于stack exchange,提问作者datazang

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 00:24:05