当前位置:网站首页>【每日SQL打卡】DAY 27丨每次访问的交易次数【难度困难-提前放出来】
【每日SQL打卡】DAY 27丨每次访问的交易次数【难度困难-提前放出来】
2022-07-29 11:42:00 【不吃西红柿】
难度困难
SQL架构
表: Visits
+---------------+---------+
| Column Name | Type |
+---------------+---------+
| user_id | int |
| visit_date | date |
+---------------+---------+
(user_id, visit_date) 是该表的主键
该表的每行表示 user_id 在 visit_date 访问了银行表: Transactions
+------------------+---------+
| Column Name | Type |
+------------------+---------+
| user_id | int |
| transaction_date | date |
| amount | int |
+------------------+---------+
该表没有主键,所以可能有重复行
该表的每一行表示 user_id 在 transaction_date 完成了一笔 amount 数额的交易
可以保证用户 (user) 在 transaction_date 访问了银行 (也就是说 Visits 表包含 (user_id, transaction_date) 行)银行想要得到银行客户在一次访问时的交易次数和相应的在一次访问时该交易次数的客户数量的图表
写一条 SQL 查询多少客户访问了银行但没有进行任何交易,多少客户访问了银行进行了一次交易等等
结果包含两列:
transactions_count:客户在一次访问中的交易次数visits_count:在transactions_count交易次数下相应的一次访问时的客户数量
transactions_count` 的值从 `0` 到所有用户一次访问中的 `max(transactions_count)按 transactions_count 排序
下面是查询结果格式的例子:
Visits 表:
+---------+------------+
| user_id | visit_date |
+---------+------------+
| 1 | 2020-01-01 |
| 2 | 2020-01-02 |
| 12 | 2020-01-01 |
| 19 | 2020-01-03 |
| 1 | 2020-01-02 |
| 2 | 2020-01-03 |
| 1 | 2020-01-04 |
| 7 | 2020-01-11 |
| 9 | 2020-01-25 |
| 8 | 2020-01-28 |
+---------+------------+
Transactions 表:
+---------+------------------+--------+
| user_id | transaction_date | amount |
+---------+------------------+--------+
| 1 | 2020-01-02 | 120 |
| 2 | 2020-01-03 | 22 |
| 7 | 2020-01-11 | 232 |
| 1 | 2020-01-04 | 7 |
| 9 | 2020-01-25 | 33 |
| 9 | 2020-01-25 | 66 |
| 8 | 2020-01-28 | 1 |
| 9 | 2020-01-25 | 99 |
+---------+------------------+--------+
结果表:
+--------------------+--------------+
| transactions_count | visits_count |
+--------------------+--------------+
| 0 | 4 |
| 1 | 5 |
| 2 | 0 |
| 3 | 1 |
+--------------------+--------------+
* 对于 transactions_count = 0, visits 中 (1, "2020-01-01"), (2, "2020-01-02"), (12, "2020-01-01") 和 (19, "2020-01-03") 没有进行交易,所以 visits_count = 4 。
* 对于 transactions_count = 1, visits 中 (2, "2020-01-03"), (7, "2020-01-11"), (8, "2020-01-28"), (1, "2020-01-02") 和 (1, "2020-01-04") 进行了一次交易,所以 visits_count = 5 。
* 对于 transactions_count = 2, 没有客户访问银行进行了两次交易,所以 visits_count = 0 。
* 对于 transactions_count = 3, visits 中 (9, "2020-01-25") 进行了三次交易,所以 visits_count = 1 。
* 对于 transactions_count >= 4, 没有客户访问银行进行了超过3次交易,所以我们停止在 transactions_count = 3 。边栏推荐
- Gbase8s core data backup
- HMS Core Discovery第16期回顾|与虎墩一起,玩转AI新“声”态
- [image detection] Research on cumulative weighted edge detection method based on gray image, with matlab code
- 谷歌“消灭” Cookie 计划延至 2024 年
- AI model risk assessment Part 2: core content
- XSS漏洞分析
- 深入理解C# 可空类型
- Insights into the development of the enterprise live broadcast industry in 2022
- Self collection online computer wallpaper PHP source code v2.0 adaptive end
- Deep understanding of c # nullable types
猜你喜欢

什么是 Kubernetes 自定义资源定义 (CRD)?

Summer vacation training week1

QML(二):设置自定义窗体

AI全流程开发难题破解之钥

游戏合作伙伴专题:BreederDAO 与《王国联盟》结成联盟

Peking University open classes are coming! Welcome to the "AI for science" class
Xiaoxiao authorization system V5.0 happy version

解决idea在debug模式下变得非常慢的问题

Meituan and hungry were interviewed by Hangzhou supervisors to implement the responsibility of food safety management and prohibit malicious competition

企业微信客户朋友圈一天可以发多少条?都有哪些限制?如何突破朋友圈可展示人数限制?
随机推荐
Building and sharing the root of the digital world: Alibaba Cloud builds a comprehensive cloud-native open source ecosystem
[image detection] Research on cumulative weighted edge detection method based on gray image, with matlab code
共建共享数字世界的根:阿里云打造全面的云原生开源生态
面试官培训课件(非常实用的企业内训课件)
Learning with Recoverable Forgetting阅读心得
【图像检测】基于灰度图像的积累加权边缘检测方法研究附matlab代码
puzzle(017.5)联动归位
多元宇宙:重塑新商业格局
精通音视频开发是真的可以为所欲为
AMH6.X升级到AMH7.0后,登录后台提示MySQL连接出错怎么解决?
解决idea在debug模式下变得非常慢的问题
【每日SQL打卡】DAY 25丨不同性别每日分数总计【难度中等】
暑假集训week1
Alluxio为Presto赋能跨云的自助服务能力
mysql单行,多行子查询
微信发红包测试用例
From scratch Blazor Server (3) - add cookie authorization
INVALID_ ARGUMENT : Invalid rank for input: modelInput Got: 3 Expected: 4 Please fix either the input
【一起学Rust | 基础篇】Rust基础——变量和数据类型
【无标题】