首页 > 数据库 >高频SQL 50题(基础版): 进店却未进行过交易的顾客 | 2023-08-14

高频SQL 50题(基础版): 进店却未进行过交易的顾客 | 2023-08-14

时间:2023-08-14 18:07:31浏览次数:36  
标签:进店 14 54 08 visit id 购物中心 顾客 ID

问题

表:Visits

+-------------+---------+
| Column Name | Type    |
+-------------+---------+
| visit_id    | int     |
| customer_id | int     |
+-------------+---------+
visit_id 是该表中具有唯一值的列。
该表包含有关光临过购物中心的顾客的信息。

 

表:Transactions

+----------------+---------+
| Column Name    | Type    |
+----------------+---------+
| transaction_id | int     |
| visit_id       | int     |
| amount         | int     |
+----------------+---------+
transaction_id 是该表中具有唯一值的列。
此表包含 visit_id 期间进行的交易的信息。

有一些顾客可能光顾了购物中心但没有进行交易。请你编写一个解决方案,来查找这些顾客的 ID ,以及他们只光顾不交易的次数。

返回以 任何顺序 排序的结果表。

返回结果格式如下例所示。

输入:
Visits
+----------+-------------+
| visit_id | customer_id |
+----------+-------------+
| 1        | 23          |
| 2        | 9           |
| 4        | 30          |
| 5        | 54          |
| 6        | 96          |
| 7        | 54          |
| 8        | 54          |
+----------+-------------+
Transactions
+----------------+----------+--------+
| transaction_id | visit_id | amount |
+----------------+----------+--------+
| 2              | 5        | 310    |
| 3              | 5        | 300    |
| 9              | 5        | 200    |
| 12             | 1        | 910    |
| 13             | 2        | 970    |
+----------------+----------+--------+
输出:
+-------------+----------------+
| customer_id | count_no_trans |
+-------------+----------------+
| 54          | 2              |
| 30          | 1              |
| 96          | 1              |
+-------------+----------------+
解释:
ID = 23 的顾客曾经逛过一次购物中心,并在 ID = 12 的访问期间进行了一笔交易。
ID = 9 的顾客曾经逛过一次购物中心,并在 ID = 13 的访问期间进行了一笔交易。
ID = 30 的顾客曾经去过购物中心,并且没有进行任何交易。
ID = 54 的顾客三度造访了购物中心。在 2 次访问中,他们没有进行任何交易,在 1 次访问中,他们进行了 3 次交易。
ID = 96 的顾客曾经去过购物中心,并且没有进行任何交易。
如我们所见,ID 为 30 和 96 的顾客一次没有进行任何交易就去了购物中心。顾客 54 也两次访问了购物中心并且没有进行任何交易。

解答

# Write your MySQL query statement below
select v.customer_id, count(1) as count_no_trans from Visits as v left join Transactions as t on t.visit_id = v.visit_id where t.transaction_id is NULL group by v.customer_id ;

标签:进店,14,54,08,visit,id,购物中心,顾客,ID
From: https://blog.51cto.com/u_7682110/7079231

相关文章

  • AtCoder Beginner Contest 314
    AtCoderBeginnerContest314-AtCoderA3.14voidsolve(){strings="3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679";intn;cin>>n;cout<<s.substr(0,n......
  • 王道408---中断等级排行
    参考: https://blog.csdn.net/yuanren201/article/details/109624922http://www.cskaoyan.com/thread-148325-1-1.html1.机器校验中断:高速程序发生了设备故障,比如电源故障,主存出错等2.访馆中断:用户程序需要操作系统接入,调用操作系统服务等3.程序性中断:包括指令和数据的格式错......
  • 亚马逊遥控器 UL1449 测试报告办理指南
    在当前智能家居趋势中,亚马逊遥控器成为了众多家庭的必备品。然而,我们作为消费者购买遥控器时,很少会关注到它是否符合安全规定。UL1449测试报告对于遥控器的安全性进行了评估,并且执行相应的标准。UL1449测试报告能够验证遥控器是否具备对抗电能干扰和过电压干扰的能力,帮助消费者选择......
  • 亚马逊遥控器 UL1449 测试报告办理指南
    在当前智能家居趋势中,亚马逊遥控器成为了众多家庭的必备品。然而,我们作为消费者购买遥控器时,很少会关注到它是否符合安全规定。UL1449测试报告对于遥控器的安全性进行了评估,并且执行相应的标准。UL1449测试报告能够验证遥控器是否具备对抗电能干扰和过电压干扰的能力,帮助消费者选择......
  • 1484. 按日期分组销售产品
    1484.按日期分组销售产品2023年8月14日09:49:541484.按日期分组销售产品简单SQLSchemaPandasSchema表Activities:+-------------+---------+|列名|类型|+-------------+---------+|sell_date|date||product|varchar|+---------......
  • 【比赛】8.14
    Ⅰ.妹子第一题考虑被包含的矩阵需不需要旋转,如上图,我们可以枚举\(x\)来判断是否可行。#include<bits/stdc++.h>#definedbdouble#defineeqs1e-6usingnamespacestd;intread(){ intx=0,f=1;charch=getchar(); while(ch<'0'||ch>'9'){if(ch==......
  • iBooker 布客技术评论 20230814
    一、程序员这个职业会在10年内被AI取代嘛?ChatGPT目前还很嫩,我教你一个检验AI编程的办法,也是检验AI和程序员的实力差距。首先你把某个程序员写的最好的代码拿出来,用AI转换成自然语言描述。如果代码太长,就一个函数一个函数扔给它。然后你把这个自然语言描述扔给AI,让它写功......
  • 【2023-08-13】连岳摘抄
    23:59我们可以相互理解,但自我的诠释却只能亲力亲为。                                                 ——黑塞高收入也有两个烦恼。一是害怕失去高收入。二是不停......
  • 【2023-08-12】连岳摘抄
    23:59总要在社会上常常尽力,才不愧为我之爱儿。人生在世,常要报社会之恩,因自己地位做得一分是一分,便人人都有事可做了。                                                 ......
  • 第14周项目5体会棋盘游戏中的数据储存
    问题及代码:/**Copyright(c)2014,烟台大学计算机学院*Allrightsreserved.*文件名称:MADE67.cpp*作者:孙化龙*完成日期:2014年12月2日*版本号:v1.0**问题描述:定义一个8行8列的二维数组a[8][8]。为二维数组中的数据赋50以内的随机数;设计函数out()、outDiagona......