首页 > 解决方案 > 重复客户被多次统计 BigQuery 和数据洞察

问题描述

我正在使用 BigQuery 和 Google Data Studio。我想计算选定日期范围内的回头客数量和重复购买率(回头客/总客户)。日期范围是我的数据工作室仪表板上的过滤器。

示例数据集 数据集

选择的日期范围过滤器:2020 年 1 月 1 日至 2020 年 9 月 30 日

我想要的输出

想要的输出

我得到的输出

正在生产的输出

这是我到目前为止的代码

    with ct as(
    select order_id, customer_id, order_date, first_order_date, 
    case when datediff(order_date, first_order_date,Day)!=0 
    then 1 else 0 end as ret_flag 
    from xx
    )
    
    select order_date, 
count(distinct(case when return_flag=0 then customer_id end)) as new_customer
    count(distinct(case when return_flag=1 then customer_id end)) as return_Customer
        
    from ct 
    group by order_date

标签: google-data-studio

解决方案


由于日期范围过滤器是由用户动态选择的,因此此逻辑不应在查询中,而应在仪表板本身中。按原样使用您的示例数据集作为仪表板的数据源。然后在仪表板中单击Resource -> Manage added datasourcesEDIT的数据源。单击ADD A FIELD并应用您的逻辑COUNT_DISTINCT(CASE ... END)


推荐阅读