MySQL基础练习题15-进店却未进行交易过的顾客

题目:有一些顾客可能光顾了购物中心但没有进行交易。来查找这些顾客的 ID ,以及他们只光顾不交易的次数。

准备数据

分析数据


题目:有一些顾客可能光顾了购物中心但没有进行交易。来查找这些顾客的 ID ,以及他们只光顾不交易的次数。

准备数据

## 创建库
create database db;
use db;## 创建visits表
Create table If Not Exists Visits(visit_id int, customer_id int);## 创建Transactions表
Create table If Not Exists Transactions(transaction_id int, visit_id int, amount int);## 向Visits插入数据
Truncate table Visits;
insert into Visits (visit_id, customer_id) values ('1', '23');
insert into Visits (visit_id, customer_id) values ('2', '9');
insert into Visits (visit_id, customer_id) values ('4', '30');
insert into Visits (visit_id, customer_id) values ('5', '54');
insert into Visits (visit_id, customer_id) values ('6', '96');
insert into Visits (visit_id, customer_id) values ('7', '54');
insert into Visits (visit_id, customer_id) values ('8', '54');## 向Transactions插入数据
Truncate table Transactions;
insert into Transactions (transaction_id, visit_id, amount) values ('2', '5', '310');
insert into Transactions (transaction_id, visit_id, amount) values ('3', '5', '300');
insert into Transactions (transaction_id, visit_id, amount) values ('9', '5', '200');
insert into Transactions (transaction_id, visit_id, amount) values ('12', '1', '910');
insert into Transactions (transaction_id, visit_id, amount) values ('13', '2', '970');

输入表

visits表

transactions表

 分析数据

ID = 23 的顾客曾经逛过一次购物中心,并在 ID = 12 的访问期间进行了一笔交易。
ID = 9 的顾客曾经逛过一次购物中心,并在 ID = 13 的访问期间进行了一笔交易。
ID = 30 的顾客曾经去过购物中心,并且没有进行任何交易。
ID = 54 的顾客三度造访了购物中心。在 2 次访问中,他们没有进行任何交易,在 1 次访问中,他们进行了 3 次交易。
ID = 96 的顾客曾经去过购物中心,并且没有进行任何交易。
如我们所见,ID 为 30 和 96 的顾客一次没有进行任何交易就去了购物中心。顾客 54 也两次访问了购物中心并且没有进行任何交易。

第一步:

## 第一步:将visits表作为左连接,让那些没有交易为null值
select v.customer_id,v.visit_id,t.transaction_id,amount
from visits v left join transactions t on v.visit_id = t.visit_id;

第二步:

## 第二步:对没有交易的顾客记性count()统计
select v.customer_id,count(*) as count_no_trans
from visits v left join transactions t on v.visit_id = t.visit_id
where transaction_id is null
group by v.customer_id;

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3280023.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

介绍五款广受好评的企业级加密软件

在当今信息化时代,数据安全已成为企业管理的重要环节。随着网络攻击和数据泄露事件的频繁发生,如何有效保护企业数据不被泄露,成为各大企业关注的焦点。加密软件作为一种有效的防护工具,通过对数据进行加密处理,确保敏…

最好用的复制粘贴软件pastemate功能简介

这应当是windows下最好用的复制粘贴软件,遥遥领先的复制粘贴软件。 效增PasteMate - 下载页面 windows下界面最优美,操作最方便的复制粘贴神器,学生党论文必备,效率神器 pastemate 1.搜索功能,能够按文本、图片、文件…

AI多模态模型架构之输出映射器:Output Projector

〔探索AI的无限可能,微信关注“AIGCmagic”公众号,让AIGC科技点亮生活〕 本文作者:AIGCmagic社区 刘一手 前言 AI多模态大模型发展至今,每年都有非常优秀的工作产出,按照当前模型设计思路,多模态大模型的…

解析和解决Protobuf数据传输中的字段错位问题

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[2435024119@qq.com] 📱个人微信:15279484656 🌐个人导航网站:www.forff.top 💡座右铭:总有人要赢。为什么不能是我呢? 专栏导…

【Linux】全志Tina etc目录下关键文件内容修改

一、文件位置 V:\f1c100s\Evenurs\f1c100s\tina\target\allwinner\c200s-F1C200s\busybox-init-base-files\etc\ssv6x5x-wifi.cfg 二、文件内容 三、介绍 在此目录下,可以修改在etc目录下的文件内容,此处举例修改一个wifi模块的配置文件数据。

【前端 20】Element-UI快速入门

探索Element UI组件库:快速搭建Vue应用的必备工具 在现代Web开发中,Vue.js以其轻量级和灵活性赢得了广泛的关注。而Element UI,作为Vue.js的一个UI组件库,更是为开发者们提供了丰富、易用的前端组件,极大地加速了开发过…

【Spring】——Spring概述、IOC、IOC创建对象的方式、Spring配置、依赖注入(DI)以及自动装配知识

🎼个人主页:【Y小夜】 😎作者简介:一位双非学校的大二学生,编程爱好者, 专注于基础和实战分享,欢迎私信咨询! 🎆入门专栏:🎇【MySQL&#xff0…

前端vue3 巧妙的checkbox 选中框样式

我们 做前端页面交互效果的时候 我们会使用到 checkbox 复选框 做一些交互的效果 我是用的是 nut-ui 组件库中的 checkbox 组件 类似于这样的选中效果 假如 二选一的那种 可以 这样写 交互好看 而不是单纯的 checkbox 框 这里我就不使用 gif 图片了 大家应该都可以看懂的 …

操作系统课程设计:(JAVA)进程管理系统(附源码zip,jdk11,IDEA Ultimate2024 )

一.题目要求描述 本设计的目的是加深对进程概念及进程管理各部分内容的理解;熟悉进程管理中主要数据结构的设计及进程调度算法、进程控制机构、同步机构及通讯机构的实施。要求设计一个允许n个进程并发运行的进程管理模拟系统。 该系统包括有简单的进程控制、同步与…

Spring AOP总结

1、AOP(Aspect-Oriented Programming):面向切面编程让开发更高效。 工作中经常需要处理日志记录、事物管理、安全控制等跨越多个业务模块的公共逻辑。 它是一种编程的范式。它通过将跨多个业务模块的公共逻辑抽取并封装成独立的模块&#xf…

微信小程序云开发订单微信支付与小票和标签打印的完整高效流程

一个字“全”!!! 前言一、流程设定1、如何开通云支付流程2、以订单下单为例的支付流程2.1 业务场景介绍2.2 业务场景流程图 二、代码与代码文件组成1、页面JS2、云函数payPre3、支付回调函数pay_cb3.1 准备条件3.2 必要认知3.3 pay_cb 完整函…

Python使用pytest-benchmark做基准测试

安装pytest-benchmark pip install pytest-benchmark代码编写 导入pytest import pytest我们以“在120以内的正整数中找出和120互质的正整数,并统计个数和求和”为例,比较穷举和使用数学技巧完成该任务的性能。 def coprime_120_1():count 0sum 0f…

Java 8-函数式接口

目录 一、概述 二、 函数式接口作为方法的参数 三、函数式接口作为方法的返回值 四、 常用的函数式接口 简单总结 简单示例 4.1 Consumer接口 简单案例 自我练习 实际应用场景 多线程处理 4.2 Supplier接口 简单案例 自我练习 实际应用场景 配置管理 4.3 Func…

MindIE Service服务化集成部署通义千问Qwen模型

一、昇腾开发者平台申请镜像 登录Ascend官网昇腾社区-官网丨昇腾万里 让智能无所不及 二、登录并下载mindie镜像 #登录docker login -u XXX#密码XXX#下载镜像docker pull XXX 三、下载Qwen的镜像 使用wget命令下载Qwen1.5-0.5B-Chat镜像,放在/mnt/Qwen/Qwen1.5-…

将项目部署到docker容器上

通过docker部署前后端项目 前置条件 需要在docker中拉去jdk镜像、nginx镜像 docker pull openjdk:17 #拉取openjdk17镜像 docker pull nginx #拉取nginx镜像部署后端 1.打包后端项目 点击maven插件下面的Lifecycle的package 对后端项目进行打包 等待打包完成即可 2.将打…

源码搭建国内微短剧系统上架(微信抖音)所需资质全面解析

随着短视频和微短剧市场的持续升温,越来越多的企业和个人开始关注并尝试进入这一领域。微短剧以其短小精悍、内容丰富的特点,吸引了大量用户的关注。对于想要搭建并运营自己的微短剧系统的创业者来说,选择合适的平台以及准备必要的资质成为了…

Linux下文件编译器-GCC/G++

前言 本文介绍了c/c的编译过程以及gcc/g的时使用 一.c/c翻译的本质:将高级语言翻译成二进制 1)程序翻译过程: (1)预处理(头文件展开、宏替换、去注释、条件编译)还是C语言代码 ​ …

ad9361 CTRL_OUT0~7对应能读到的状态

ad9361 CTRL_OUT对应能读到的状态

新手小白如何投放知乎信息流广告推广?

随着越来越多的企业开始寻求更有效的方式来触达目标客户,知乎作为一个集知识分享、社交互动于一体的平台,已经成为众多品牌青睐的广告投放渠道之一。特别是知乎的信息流广告,因其高度融合的内容形式和精准的目标用户定向,成为了品…

《计算机网络》(第8版)第五章 运输层 复习笔记

第五章 运输层 一、运输层协议概述 1 运输层的功能 从通信和信息处理角度讲,传输层向应用层提供服务,是面向通信的最高层,也是面 向用户功能的最底层,它的主要功能有: (1)提供用户进程之间的逻…