【MySQL基础刷题】总结题型(二)

news2024/10/16 18:28:27

最多10题,再多不消化了

  • 1.至少有5名直接下属的经理
  • 2.销售员
  • 3.订单最多的客户
  • 4.计算布尔表达式的值
  • 5.查询球队积分
  • 6.苹果和桔子
  • 7.两人之间的通话次数
  • 8.确认率
  • 9.各赛事的用户注册率

1.至少有5名直接下属的经理

在这里插入图片描述
注意左连接的使用

select e1.name
from Employee e1 left join Employee e2 on e1.id = e2.managerId
where e2.managerId is not null
group by e1.id
having count(*) >= 5;

2.销售员

有三张表,销售人员表,公司表和订单表
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
找出没有任何与名为 “RED” 的公司相关的订单的所有销售人员的姓名。

select name
from SalesPerson
where sales_id not in
(
    select sales_id from Orders where com_id in
    (
        select com_id from Company where name = 'RED'
    )
)

3.订单最多的客户

查找下了 最多订单 的客户的 customer_number 。
在这里插入图片描述

select customer_number
from Orders 
group by customer_number
order by count(customer_number) desc
limit 1

4.计算布尔表达式的值

给一张variables表和一张expressions表
在这里插入图片描述
最后使用variables表找到expressions表中的每一个布尔表达式的值
在这里插入图片描述
在这里,一张表要链接两次,都用expressions 与variable连接两次,且都用left join,分别与x,y匹配
然后用case when语句判断 Result中的value

select e.*,
(
    case
        when operator = '=' and v1.value = v2.value then 'true'
        when operator = '>' and v1.value > v2.value then 'true'
        when operator = '<' and v1.value < v2.value then 'true'
        else 'false'
    end
) as value
from Expressions e 
left join Variables v1 on e.left_operand = v1.name
left join Variables v2 on e.right_operand = v2.name

5.查询球队积分

在这里插入图片描述
规则如下:

  • 如果球队赢了比赛(即比对手进更多的球),就得 3 分。
  • 如果双方打成平手(即,与对方得分相同),则得 1 分。
  • 如果球队输掉了比赛(例如,比对手少进球),就 不得分 。

最后输出球队积分
在这里插入图片描述
居然不需要连接…

select t.team_id, t.team_name, ifnull(sum(
    case
        when m.host_goals > m.guest_goals and m.host_team = t.team_id then 3
        when m.host_goals = m.guest_goals and m.host_team = t.team_id then 1
        when m.host_goals < m.guest_goals and m.host_team = t.team_id then 0

        when m.host_goals > m.guest_goals and m.guest_team = t.team_id then 0
        when m.host_goals = m.guest_goals and m.guest_team = t.team_id then 1
        when m.host_goals < m.guest_goals and m.guest_team = t.team_id then 3
    end
), 0) as num_points
from Teams t, Matches m 
group by t.team_id
order by num_points desc, t.team_id asc

6.苹果和桔子

问每一条苹果和桔子销售数量的差值
在这里插入图片描述

很常见但也很巧的思路…

select sale_date, sum(case when fruit='apples' then sold_num else -sold_num end) as diff
from Sales
group by sale_date
order by sale_date

7.两人之间的通话次数

在这里插入图片描述
题目要求输出person1 < person2

select
    if(from_id < to_id, from_id, to_id) person1,
    if(from_id > to_id, from_id, to_id) person2,
    count(*) as call_count,
    sum(duration) as total_duration 
from Calls
group by person1, person2

8.确认率

用户的 确认率 是 ‘confirmed’ 消息的数量除以请求的确认消息的总数。没有请求任何确认消息的用户的确认率为 0 。确认率四舍五入到 小数点后两位 。
在这里插入图片描述
输出
在这里插入图片描述
求比率的问题可以用avg(if)来解决
avg 函数计算所有输入值的平均值。当输入由1和0组成时,平均值实际上反映了1的值所占的比例,即条件为真的比例。

select s.user_id, round(avg(if(c.action = 'confirmed',1,0)),2) as confirmation_rate
from Signups s left join Confirmations c on s.user_id = c.user_id
group by s.user_id

9.各赛事的用户注册率

编写解决方案统计出各赛事的用户注册百分率,保留两位小数。

返回的结果表按 percentage 的 降序 排序,若相同则按 contest_id 的 升序 排序。
在这里插入图片描述
在这里插入图片描述
查询嵌套子查询,新颖

select contest_id, round(count(user_id) * 100 / (select count(*) from Users), 2) as percentage
from Register
group by contest_id
order by percentage desc, contest_id asc;

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

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

相关文章

静态路由、动态路由以及默认路由

默写&#xff1a; ARP协议作用&#xff1a; 1.将ip地址转换为mac地址 2.检测ip地址是否有冲突&#xff08;无故ARP&#xff0c;免费ARP&#xff09; icmp协议&#xff1a; 检测主机双向连通性 tcp与udp的区别&#xff1a; tcp&#xff1a;面向连接&#xff0c;慢&#xf…

【测试基础篇1】一文搞懂软件测试基础知识,开启测试之路,走向测试人生巅峰

简介&#xff1a;一文搞懂软件测试&#xff0c;开启测试之路&#xff0c;走向测试人生。 一、软件测试的定义 维基百科定义&#xff1a; 软件测试的经典定义是&#xff1a;在规定的条件下对程序进行操作&#xff0c;以发现程序错误&#xff0c;衡量软件质量&#xff0c;并对其…

TypeScript数据类型限定(基本数据类型,void,数组,元组,枚举,any,unknown,never,函数,自定义数据类型,联合类型和交叉类型)

一、安装解析ts的工具包 node.js只认识js代码&#xff0c;不认识ts代码。 需要将ts代码转化为js&#xff0c;然后就可以在node.js中运行了。 安装步骤&#xff1a;打开终端&#xff0c;输入命令npm i -g typescript回车 typescript是用来解析ts的工具包。提供了tsc命令&…

Python 如何处理大规模数据库表的迁移与数据迁移的高效执行

Python 如何处理大规模数据库表的迁移与数据迁移的高效执行 引言 在现代应用开发中&#xff0c;随着业务需求的增长&#xff0c;数据库表结构和数据往往需要进行迁移和更新。迁移&#xff08;Migration&#xff09;是指对数据库表的结构、数据类型、索引、约束等进行修改或更新…

<Linux> 线程安全

目录 文章目录 一、Linux线程互斥 1. 进程线程间的互斥相关背景概念 2. 互斥量mutex 3. 互斥量接口 初始化互斥量 动静态分配 销毁互斥量 互斥量加锁 互斥量解锁 4. 互斥量实现原理 5. 简单封装互斥量 二、可重入与线程安全 1. 概念 1.1 可重入 1.2 线程安全 2. 常见的线程不…

记录Centos7 漫漫配置路

记录Centos7 漫漫配置路 一、 配置源二、 clinfo三、 PCL 配置1. 依赖2. eigen3. boost4. flann5. pcl 四、YAML-CPP五、 miniconda 安装 python3.6 和 pytorch六、libbot 配置1. 容易安装的依赖2. 需要源码安装的依赖3. [libbot](https://github.com/libbot2/libbot2) 简单地说…

幂律分布笔记

一、幂律分布的数据拟合 数据分箱&#xff1a; 所谓分箱就是对原始数据进行分组&#xff0c;然后对每一组内的数据进行平滑处理。常见的分箱方式主要有等深分箱、等宽分箱、用户自定义等 对数分箱&#xff1a; 对原数据进行分箱&#xff0c;第i个箱的宽度为bi&#xff0c;b…

【jQuery】jQuery基本操作(样式操作 内容操作 节点操作 属性操作 节点遍历)

文章目录 1、样式操作2、内容操作2-1 html()2-2 text()2-3 val() 3、节点操作3-1 创建3-2 插入3-3 删除3-4 替换3-5 复制 4、属性操作5、节点遍历6、DOM操作 DOM 操作分为三类&#xff1a; ​ DOM Core&#xff1a;任何一种支持DOM的编程语言都可以使用它&#xff0c;如getElem…

Go语言中的时间比较与时区处理

文章目录 问题背景问题分析验证时区问题 解决方案方法 1&#xff1a;使用本地时区解析时间方法 2&#xff1a;将 time.Now() 转换为 UTC 最终结果总结 在后端开发中&#xff0c;时间处理往往是不可避免的&#xff0c;尤其是涉及到跨时区的应用时&#xff0c;时区问题常常会引发…

基于yolov5的手机屏幕缺陷检测系统,支持图像、视频和摄像实时检测【pytorch框架、python源码】

更多目标检测和图像分类识别项目可看我主页其他文章 功能演示&#xff1a; yolov5&#xff0c;手机屏幕缺陷检测系统&#xff0c;支持图像、视频和摄像实时检测【pytorch框架、python源码】_哔哩哔哩_bilibili &#xff08;一&#xff09;简介 基于 YOLOv5 的手机屏幕缺陷检…

创建PV时报错:任务清单存在生产版本的不一致

创建PV时报错&#xff1a;任务清单存在生产版本的不一致。 输入的批量不一致。 批量改为一致99&#xff0c;999&#xff0c;999.000后&#xff0c;报错解决。

Window入侵排查思路-应急响应实战笔记

0x00 前言 当企业发生黑客入侵、系统崩溃或其它影响业务正常运行的安全事件时&#xff0c;急需第一时间进行处理&#xff0c;使企业的网络信息系 统在最短时间内恢复正常工作&#xff0c;进一步查找入侵来源&#xff0c;还原入侵事故过程&#xff0c;同时给出解决方案与防范措…

对接优惠折扣影票接口有什么好处?

对接电影票接口可以为开发者、商家和用户提供多种好处&#xff0c;以下是一些主要优势&#xff1a; 便捷性&#xff1a;用户可以直接在应用程序或网站上查询电影信息、选择座位和购票&#xff0c;无需离开平台即可完成整个购票流程。 提高用户粘性&#xff1a;为用户提供一站式…

无锁队列实现(Michael Scott),伪代码与c++实现

一、Michael & Scoot 原版伪代码实现 structure pointer_t {ptr: pointer to node_t, count: unsigned integer}structure node_t {value: data type, next: pointer_t}structure queue_t {Head: pointer_t, Tail: pointer_t}initialize(Q: pointer to queue_t)node new_…

薪资管理系统原型PC端+移动端 Axure原型 交互设计 Axure实战项目

薪资管理系统原型PC端移动端 Salary Management System Prototype 薪资管理系统原型图是一种以图形化方式展示系统界面和功能交互的设计图形。该原型图旨在呈现薪资管理系统的整体架构、界面布局和用户交互流程&#xff0c;为开发团队和利益相关者提供一个清晰而具体的概念。…

CSS 实战录: 双栏、四等分、不等间距、自适应...

引言 一个当初困扰我许久的设计稿还原问题, 故在此做个简单记录!! 设计稿布局大概如下图所示 整体分为左右两部分同时划分了模块 A B C DA B C 之间的间距为 24px, C D 之间的间距为 64px整体宽度 100% 自适应铺满, 并且 A B C D 宽度保持一致 那么问题来了, 假设给出下面 DO…

Python | Leetcode Python题解之第473题火柴拼正方形

题目&#xff1a; 题解&#xff1a; class Solution:def makesquare(self, matchsticks: List[int]) -> bool:totalLen sum(matchsticks)if totalLen % 4:return FalsetLen totalLen // 4dp [-1] * (1 << len(matchsticks))dp[0] 0for s in range(1, len(dp)):fo…

【市场解读】传统到端到端的智驾分水岭已至

参考文献&#xff1a;平安证券《汽车行业深度报告&#xff1a;智驾分水岭已至》 关键词学习 端到端智驾系统end to end “端到端”智驾是一种新的智能驾驶技术&#xff0c;不再依赖于传统的感知原件&#xff0c;而是通过算法、AI、模型架构数据迭代来实现自主学习和思考能力…

MySQL数据库从入门到精通 第1讲 基本概念

MySQL数据库从入门到精通 第1讲 基本概念 小可爱们&#xff0c;接下来我们要学习的知识是数据库相关的知识&#xff0c;从本贴开始&#xff0c;从0基础带大家入门到精通&#xff0c;要加油哦~ 1 前言 1.1 为什么要学习数据库&#xff1f; 那我们首先要搞清楚第一个问题&…

深入了解EasyNVR及EasyNVS,EasyNVR连接到EasyNVS当显示授权超时如何解决?又因为什么原因?

我们先来了解NVR批量管理软件/平台EasyNVR&#xff0c;它深耕市场多年&#xff0c;为用户提供多种协议&#xff0c;兼容多种厂商设备&#xff0c;包括但不限于支持海康&#xff0c;大华&#xff0c;宇视&#xff0c;萤石&#xff0c;天地伟业&#xff0c;华为设备。 NVR录像机…