高频 SQL 50 题(基础版)连接部分

1、使用唯一标识码替换员工ID

# Write your MySQL query statement below
SELECT b.unique_id, a.name
FROM Employees as a
LEFT JOIN EmployeeUNI as b
ON a.id = b.id;

2、产品销售分析 I

# Write your MySQL query statement below
SELECTp.product_name, s.year, s.price
FROM Sales s
JOINProduct p
ONs.product_id = p.product_id

总结

  • INNER JOIN:仅返回匹配的记录。
  • LEFT JOIN:返回左表的所有记录,即使右表没有匹配的记录。
  • RIGHT JOIN:返回右表的所有记录,即使左表没有匹配的记录。
  • FULL JOIN:返回左表和右表的所有记录,没匹配的部分用 NULL 填充。
  • CROSS JOIN:返回两张表的笛卡尔积,生成所有可能的组合。
  • SELF JOIN:将表与自身进行连接,常用于表示层级关系。
  • NATURAL JOIN:自动根据同名列进行连接。

在MySQL中,JOIN操作默认使用的是INNER JOIN。INNER JOIN是MySQL默认的JOIN类型。它返回两个表中符合条件的行。INNER JOIN使用ON关键字来指定连接条件,将两个表中符合条件的记录合并在一起,生成一个新的结果集。

3、进店却未进行过交易的顾客

# Write your MySQL query statement below
SELECTv.customer_id,count(v.customer_id)count_no_trans
FROMVisits v
LEFT JOIN Transactions t
ON v.visit_id = t.visit_id
WHEREtransaction_id is NULL
GROUP BYv.customer_id

4、上升的温度

SELECT a.id
FROM Weather as a
CROSS JOINWeather as b
WHEREdatediff(a.recordDate,b.recordDate) = 1 
ANDa.Temperature >b.Temperature

 

5、每台机器的进程平均运行时间

# Write your MySQL query statement below
SELECTmachine_id, round(sum(if(activity_type = 'start', -timestamp, timestamp)) / count(*)*2, 3) as processing_time
FROM Activity
GROUP BYmachine_id

6、员工奖金

# Write your MySQL query statement below
SELECTe.name, b.bonus
FROM Employee e
LEFT JOINBonus b
ONe.empId = b.empId
WHEREb.bonus is NULL OR b.bonus < 1000

 

7、学生们参加各科测试的次数

SELECT s.student_id, s.student_name, sub.subject_name, IFNULL(grouped.attended_exams, 0) AS attended_exams
FROM Students s
CROSS JOIN Subjects sub
LEFT JOIN (SELECT student_id, subject_name, COUNT(*) AS attended_examsFROM ExaminationsGROUP BY student_id, subject_name
) grouped 
ON s.student_id = grouped.student_id AND sub.subject_name = grouped.subject_name
ORDER BY s.student_id, sub.subject_name;

8、至少有5名直接下属的经理

# Write your MySQL query statement below
SELECT b.name
FROM Employee a
LEFT JOINEmployee b
ON a.managerId = b.id
GROUP BYa.managerId
HAVING COUNT(b.id)>=5  

9、确认率

# Write your MySQL query statement below
SELECTT1.user_id,round(count(if(T2.action = "confirmed",true,null)) / count(*),2) AS confirmation_rate
FROMSignups as T1 
JOIN confirmations AS T2
ON T1.user_id = T2.user_id
GROUP BYT1.user_id;

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

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

相关文章

D66【python 接口自动化学习】- python基础之数据库

day66 SQL-DQL-排序分页 学习日期&#xff1a;20241112 学习目标&#xff1a;MySQL数据库-- 135 SQL-DQL-排序分页 学习笔记&#xff1a; 结果查询 结果分页限制 总结 排序和分页限制的语法 2. 关键字总结&#xff1a;

Groovy有哪些官方文档和教程可以学习?

Groovy Language Documentation&#xff1a; 这是Groovy的官方文档&#xff0c;提供了详细的语言规范、教程和指南。您可以从这里下载JavaDoc和在线文档&#xff0c;以及获取关于如何开始使用Groovy的指导。[Groovy Language Documentation][1] Groovy官方教程&#xff1a; 官…

LeetCode 3.无重复字符的最长子串

LeetCode 3.无重复字符的最长子串 思路&#x1f9d0;&#xff1a; 使用滑动窗口哈希表&#xff0c;哈希表映射每一个字符串&#xff0c;左右指针表示当前区间&#xff0c;当出现一个字符串那么就将哈希表1&#xff0c;右指针移动&#xff0c;当哈希表对应位置大于1时&#xff0…

验证码处理在自动化测试中的应用

在进行自动化测试时&#xff0c;处理验证码是一项常见的挑战&#xff0c;特别是图形验证码。每次刷新都会生成新的验证码&#xff0c;因此我们可以采用以下两种方法来获取验证码&#xff1a; 获取验证码图片链接&#xff1a;例如 src"http://example.com/getcaptcha/123&q…

云计算在智能交通系统中的应用

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 云计算在智能交通系统中的应用 云计算在智能交通系统中的应用 云计算在智能交通系统中的应用 引言 云计算概述 定义与原理 发展历…

全球碳循环数据集(2000-2023)包括总初级生产力、生态系统净碳交换和生态系统呼吸变量

全球碳循环数据集&#xff08;2000-2023&#xff09; 数据介绍 PFTs_XGB FLUX 是一个基于 XGBOOST 机器学习模型的全球碳循环数据集。该数据集通过对全球植被功能类型&#xff08;PFTs&#xff09;的分类&#xff0c;结合了 FLUXNET、AmeriFlux 和 ICOS 通量站点的现场观测数据…

Kafka经典面试题

1、kafka消息发送的流程&#xff1f; producer发送过程中启动两个线程 一个main线程 一个sender线程&#xff0c;在main线程中先创建一个双端队列&#xff08;RecordAccumlator、producerbatch&#xff09;&#xff0c;main将我们需要发送的东西经过拦截器&#xff0c;序列化&a…

HTB:Photobomb[WriteUP]

目录 连接至HTB服务器并启动靶机 使用nmap对靶机进行端口开放扫描 再次使用nmap对靶机开放端口进行脚本、服务扫描 使用ffuf进行简单的子域名扫描 使用浏览器直接访问该域名 选取一个照片进行下载&#xff0c;使用Yakit进行抓包 USER_FLAG&#xff1a;a9afd9220ae2b5731…

蓝桥杯c++算法学习【1】之枚举与模拟(卡片、回文日期、赢球票、既约分数:::非常典型的比刷例题!!!)

别忘了请点个赞收藏关注支持一下博主喵&#xff01;&#xff01;&#xff01; 关注博主&#xff0c;更多蓝桥杯nice题目静待更新:) 枚举与模拟 一、卡片&#xff1a; 【问题描述】 小蓝有很多数字卡片&#xff0c;每张卡片上都是一个数字&#xff08;0到9&#xff09;。 小蓝…

html页面中的内容替换,或改变某些字的颜色

1. html页面中的内容替换,或改变某些字的颜色 前端使用innnerHtml显示返回值+innerHtml文字显示两种不同的颜色(两部分显示颜色不一样) 1.1. html字符串改变某些字的颜色 需求:要文本框的字体部分改变颜色、大小、换行等功能。在了解需求后,文本框input发现完全满足不了现需…

Linux——简单认识vim、gcc以及make/Makefile

前言&#xff1a;大佬写博客给别人看&#xff0c;菜鸟写博客给自己看&#xff0c;我是菜鸟。 1、vim操作&#xff1a; 默认打开vim时&#xff0c;vim处于命令模式。(在其他模式中&#xff0c;Esc就能够返回命令模式) 常用的命令有&#xff1a; n gg&#xff1a;跳转到n行&…

C++基础(12.红黑树实现)

目录 红黑树的概念&#xff1a; 红黑树规则&#xff1a; 红黑树如何确保最长路径不超过最短路径的2倍的&#xff1f; 红黑树的效率&#xff1a; 红黑树的插入: 红黑树树插入⼀个值的大概过程: 情况1&#xff1a;变色 情况2&#xff1a;单旋变色&#xff1a; 情况3&…

Spark 的容错机制:保障数据处理的稳定性与高效性

Spark 的介绍与搭建&#xff1a;从理论到实践_spark环境搭建-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交&#xff1a;本地与集群模式全解析-CSDN博客 Spark on YARN&#xff1a;Spark集群模式…

Linux内核编程(二十)RTC子系统一驱动rx8010

本文目录 一、基础知识点1.什么是RTC&#xff1f;2. RTC方案3. 电路原理图 二、RTC芯片&#xff08;RX8010&#xff09;移植三、关于时间的一些命令四、应用层使用1. 使用RTC驱动2. 使用time.h库&#xff08;额外知识点&#xff09; 一、基础知识点 1.什么是RTC&#xff1f; R…

GESP4级考试语法知识(贪心算法(一))

海盗船代码&#xff1a; #include<iostream> #include<algorithm> using namespace std; int data[21]; int main() {int n;cin>>n;for(int i0;i<n;i)cin>>data[i];sort(data,datan);int temp0,sum0;for(int i0;i<n;i){tempdata[i];if(temp>…

036 RabbitMQ消息确认 死信队列 延时队列

文章目录 生产者确认模式application.propertiesMessageController.javaMessageConfirmRallback.java 生产者回退模式application.propertiesMessageConfirmRallback.javaMessageController.java 消费者手动确认application.propertiesConsumerAckQueueListener.java 死信队列延…

Unity 插件 - Project窗口资源大小显示

Unity 插件 - Project窗口资源大小显示 &#x1f354;功能&#x1f32d;安装 &#x1f354;功能 &#x1f4a1;.显示Project Assets 和Packages下所有文件的大小&#xff08;右侧显示&#xff09; &#x1f4a1;.统计选中文件夹及其子文件夹下所有文件的大小并显示&#xff08…

Maven 中央仓库地址 mvnrepository.com

下载一些 jar 包驱动&#xff0c;不需用去官网下了&#xff0c;直接去 Maven 中央仓库&#xff0c;高效、简单 Maven 中央仓库地址 https://mvnrepository.com/open-source 我们下期见&#xff0c;拜拜&#xff01;

制作自己的刷题小题库,提高刷题效率

日常刷题 乱序/背题多种模式 组队刷题 查看小组的刷题统计 在线考试 创建考试多人同时答题 ----这是一条分割线----- 土著刷题&#xff0c;是一款可以导入题库的在线刷题学习小&#x1f34a;序&#xff0c;提供一套以【搭建题库-组建小组-刷题练习-在线考试】为中心的完整服务…

WPF在MVVM模式下怎么实现导航功能

在mvvm的模式下wpf通过frame实现页面跳转_哔哩哔哩_bilibili 视频讲解同步可观看 如下图&#xff0c;我们要实现点击左侧的菜单&#xff0c;在右侧展示不同的页面 实现代码如下&#xff1a; 一、如何从主窗体跳转到页面。 1、在mainwindow.xaml的菜单栏代码里加入如下代码 …