用sql怎么实现这个需求

image.png

SQL 帆软用户APLyJQ092P 发布于 2023-10-19 13:11
1min目标场景问卷 立即参与
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
快乐星光Lv5中级互助
发布于2023-10-19 13:35(编辑于 2023-10-19 13:37)

试一下:

select a.会员等级,a.会员数,b.历史会员数

from (

select newlevel as 会员等级,count(1) as 会员数

from (

select id,newlevel,row_number()over(partition by id order by changedate desc) rnum from 表2where changedate<='2023-05-02' -- '2023-05-02'换成参数

) s 

where rnum=1 

group by newlevel

     ) a

left join(

select newlevel as 会员等级,count(1) as 历史会员数 from 表2 

where 1=1

      and 变更日期<='2023-05-02' -- '2023-05-02'换成参数

group by newlevel

 ) b on a.会员等级=b.会员等级

最佳回答
0
ZxxTLv6初级互助
发布于2023-10-19 13:23

不妨问问chatgpt:https://promptszone.com/?rc=dKvbU19wxL

  • 3关注人数
  • 239浏览人数
  • 最后回答于:2023-10-19 13:37
    请选择关闭问题的原因
    确定 取消
    返回顶部