MySQL基础【语句执行顺序】

一个SQL语句它的执行顺序对于我们思考题意有着很重要的关系

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

题意就是:找出哪些只逛超市不买单的人(买单0元也算哦,可能是使用的是代金券吧)

看到此题关键找出两个数据 参观过的人 和 买单的人 他们的差就是白嫖的人(支付0元也算,这是个坑)

select v.customer_id,count(v.customer_id)-count(t.visit_id) count_no_trans 
from visits v
left join transactions t
on v.visit_id=t.visit_id
group by v.customer_id
having count_no_trans  != 0

一下是这个语句的执行顺序
FROM 子句:
首先,数据库引擎会从 Visits 表中检索数据,并将其别名为 v,以便在后续的查询中引用。

LEFT JOIN 子句:
接着,执行左连接操作,将 Visits 表中的每一行与 Transactions 表中的匹配行进行连接。这意味着从 Visits 表中获取的每个访问记录都将与 Transactions 表中的相关访问记录进行匹配。
此时会有一个临时的虚拟表,没有匹配上的值会被赋予 null,以visit表为中心(visit表中有,但transaction没有的为null)

GROUP BY 子句:
然后,根据 customer_id 列对结果集进行分组。这意味着所有具有相同 customer_id 的行将被分为一组。(左连接后的表)
与聚合语句count联合使用得出 参观者数量 和付费者数量

SELECT 子句:
最后,在分组之后,使用 SELECT 子句选择要返回的列,并对每个分组应用聚合函数 COUNT(v.customer_id),以计算每个顾客的访问次数。得出差值

HAVING 子句:
最后,使用 HAVING 子句对结果进行过滤,只保留 count_no_trans 不等于 0 的分组。
只显示白嫖者数量,付过费的不显示被过滤掉,对count的差值 = 0进行过滤

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

H.264 压缩与编解码原理

H.264 压缩与编解码原理 H.264 压缩与编解码原理H.264 简介视频编码的总体思路H.264 压缩技术帧内预测压缩什么是空间冗余?具体预测方法 帧间预测压缩什么是时间冗余?具体预测方法:运动估计 概念:Group of Pictures(GO…

LC 96.不同的二叉搜索树

96.不同的二叉搜索树 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入: n 3 输出: 5 示例 2: 输入:…

【JavaSE】接口 详解(上)

前言 本篇会讲到Java中接口内容,概念和注意点可能比较多,需要耐心多看几遍,我尽可能的使用经典的例子帮助大家理解~ 欢迎关注个人主页:逸狼 创造不易,可以点点赞吗~ 如有错误,欢迎指出~ 目录 前言 接口 语法…

SQL Server详细安装使用教程

1.安装环境 现阶段基本不用SQL Server数据库了,看到有这样的分析话题,就把多年前的存货发一下,大家也可以讨论看看,思路上希望还有价值。 SQL Server 2008 R2有32位版本和64位版本,32位版本可以安装在Windows XP及以上…

函数式编程(一)

函数式编程总体介绍 函数式编程(functional programming)其实是个很古老的概念,诞生距今快60年啦! 最古老的函数式编程语言Lisp 新出现的函数式编程语言:比如Erlang、Scala、clojure等 热门语言:Python、java、JavaScript、C等…

【洛谷 P8655】[蓝桥杯 2017 国 B] 发现环 题解(邻接表+并查集+路径压缩)

[蓝桥杯 2017 国 B] 发现环 题目描述 小明的实验室有 N N N 台电脑,编号 1 ∼ N 1 \sim N 1∼N。原本这 N N N 台电脑之间有 N − 1 N-1 N−1 条数据链接相连,恰好构成一个树形网络。在树形网络上,任意两台电脑之间有唯一的路径相连。 …

拓扑排序--有向无环图中一个节点的所有祖先

题目描述 给你一个正整数 n ,它表示一个 有向无环图 中节点的数目,节点编号为 0 到 n - 1 (包括两者)。 给你一个二维整数数组 edges ,其中 edges[i] [fromi, toi] 表示图中一条从 fromi 到 toi 的单向边。 请你返…

OAuth 2.0 的四种方式

RFC 6749 OAuth 2.0 的标准是 RFC 6749 文件。该文件先解释了 OAuth 是什么。 OAuth 引入了一个授权层,用来分离两种不同的角色:客户端和资源所有者。…资源所有者同意以后,资源服务器可以向客户端颁发令牌。客户端通过令牌,去请…

K8S - Deployment 的版本回滚

当前状态 先看deployment rootk8s-master:~# kubectl get deploy -o wide --show-labels NAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES …

Xen Server 8 Install

Xen Sevrer 前言 XenServer(以前称为 Citrix Hypervisor)是业界领先的平台,实现了经济高效的桌面、服务器和云虚拟化基础结构。XenServer 支持任意规模或类型的组织整合计算资源,以及将计算资源转换为虚拟工作负载,从…

代码随想录|Day32|动态规划01|509.斐波那契数列、70.爬楼梯、746.使用最小花费爬楼梯

509.斐波那契数列 动规五步曲: 确定 dp[i] 含义:第 i 个斐波那契数值为 dp[i]递推公式:dp[i] dp[i - 1] dp[i - 2]dp数组初始化:dp[0] dp[1] 1遍历顺序:从前向后打印dp数组 class Solution:def fib(self, n: int) …

【拓扑空间】示例及详解2

设A是X的一个子集, 内点、邻域:,则x是A的一个内点,A是x的一个领域 内部:A的所有的内点的集合称为A的内部,记 例1 证明: Proof: 例2 证明:是包含在A中的所有开集的并集&#xff0c…