【发布时间】:2020-05-04 20:20:31
【问题描述】:
我有一个 SQL 问题,应该用 rank 或 row_number 解决(我认为),但我不知道如何。
我有一张显示应用用户行为的表格。用户可以在应用程序中单击菜单按钮,然后应用程序显示不同的产品(在菜单视图内)。因此,我表中的每一行都是用户在应用程序中执行的一次点击。
表格中有“菜单”列和“产品”列。如果用户单击菜单按钮,“菜单”列的值为 1。如果用户单击其他任何内容,则为 0。在菜单中,用户可以单击不同的产品,因此对于单击的每个产品,“产品”列'是 1。
所以,我想知道用户在菜单视图中点击了多少产品。我还有日期、平台(iOS 或 Android)、国家、用户 ID 和会话 ID。 30 分钟内发生的所有事情都在会话中,并且会话仅与一个用户相关。用户 ID 和会话 ID 都是唯一的。
表格是这样的:
此表显示用户 AAA 打开菜单然后单击了 2 个不同的产品,用户 BBB 在一个会话中打开菜单一次并且没有单击任何内容,然后再次打开并且没有单击任何内容。最后,用户 CCC 在第一个会话中点击了菜单并打开了 2 个产品,然后在另一个会话中他/她点击了菜单并打开了一个产品。
我想要这样的东西:
我尝试过使用 rank 和 row_number,我可以为产品的行获得相同的排名,但我无法让菜单行与产品行具有相同的排名。
希望你能帮帮我:(
【问题讨论】:
-
不要放图片。尝试放置文本内容。
标签: sql rank row-number