sql - 我需要将 SQL 中的所有活动分配给一个 ID,但目前每个活动都有三个 ID
问题描述
假设我们有views
一个表,其中每个活动都有三个用户 ID。
- ID1 - 服务器端的用户 cookie
- ID2 - 浏览器端的用户 cookie
- ID3 - 登录用户
我需要将活动分配给一个 ID。
例子:
ID1 ID2 ID3
-----------
1 A
1 A
1 B I
2 B I
3 C I
在第三个活动期间,用户注册了帐户,现在我知道所有活动都涉及一个用户。ID1 和 ID2 是不确定的 cookie ID。ID3仅在用户注册和登录时使用。用户不必注册和登录。用户可以在没有帐户的情况下使用该网站 - 但我需要有关整个用户活动的信息。
- 如何计算所有视图并分配给一个 ID?在上面的示例中,我们可以看到一个用户生成了 5 个视图。
- 是否可以加入另一个具有相同三个 ID 的表?
解决方案
我试着玩了一下,但无法达到你想要的(时间有限)
我认为您可以使用两种解决方案:
- 窗口函数
SELECT gen_random_uuid(), count(id1) over (partition by ...)
- 联盟
推荐阅读
- bash - 多遍变量扩展,可以吗?
- javascript - 根据值跳过数组中的每个第 n 个值
- php - Laravel如何在创建7天后删除数据库记录
- stata - 遍历文件夹以生成和保存每个文件的图形
- android - android中的深度层
- powershell - 从 Process 块调用函数
- java - Spring vs Spring boot 反向代理问题
- reactjs - 如何使用 Axios 和 React 传递 Header JWT 令牌?
- tensorflow - 为什么 tf.cond 中的 false_fn 从未调用过?
- javascript - 我正在尝试使用 JavaScript 对网页进行密码保护