Simple SQL that I am stuck on

后端 未结 3 1722
礼貌的吻别
礼貌的吻别 2021-01-29 06:26

What percent of customers are reward members?

ID                 Reward Member
1                       y
2                       y
3                       n
4            


        
3条回答
  •  臣服心动
    2021-01-29 07:02

    I would use conditional aggregation:

    select avg( case when rewardmember = 'y' then 1.0 else 0 end) as ratio
    from t;
    

    Some databases allow shorter syntax, such as:

    select avg( rewardmember = 'y' )
    from t;
    

    or:

    select avg( (rewardmember = 'y')::int )
    from t;
    

提交回复
热议问题