标签测试 问题记录

clickhouse:https://clickhouse.com/docs/zh/sql-reference/functions/bitmap-functions/#bitmapcontains

需求分析:

  • 框选常用城市为山西,且消费性别为男或者未知的人群 ;

问题:

  • 发现返回的人群数为0 ,预期结果:返回的人群数大于0 ;

问题分析:

SELECT 
groupBitmapAnd(uv) "交集"
,groupBitmapOr(uv) "并集"
FROM (
SELECT 'flag' as flags,uv
    FROM db_dmp.ch_lable_string  
    WHERE labelname ='gender_consume'
    AND labelvalue  IN ('','未知')  
UNION ALL 
    SELECT 'flag' as flags,uv
    FROM db_dmp.ch_lable_string  
    WHERE labelname ='often_province_cd'
    AND labelvalue IN ('140000000000')  -- 山西    
) t 

 

 

 

 

原因:

  • 消费性别 男和未知的交集 确实为0 ,所以不能在最外层进行 groupBitmapAnd ,正确写法 见下图 :

 

 

posted @ 2021-12-01 18:45  linbo.yang  阅读(33)  评论(0编辑  收藏  举报