SQL笔记-2024/01/31

cross join
两个表的笛卡尔积
例如:
select s.name student_name,s.age student_age,s.class_id class_id,c.name class_name
from student s
cross join class c;

子查询
select s.name name,s.score score,s.class_id class_id
from student s
where s.class_id in (select distinct c.id from class c);

子查询 - exists
select s.name,s.age,s.class_id
from student s
where 1=1
and not exists (select 1 from class c where c.id = s.class_id);

组合查询
union 不保留重复行
union all 保留重复行
select s.name,s.age,s.score,s.class_id
from student s
union all
select sn.name,sn.age,sn.score,sn.class_id
from student_new sn;

开窗函数 - sum over
select s.id id,s.name name,s.age age,s.score score,s.class_id class_id,AVG(score) over (partition by class_id) as class_avg_score
from student s;

开窗函数 - sum over order by
select s.id id,s.name name,s.age age,s.score score,s.class_id class_id,SUM(score) over (partition by class_id order by score asc) as class_sum_score
from student s;

开窗函数 - rank
select s.id id,s.name name,s.age age,s.score score,s.class_id class_id,RANK() over (partition by class_id order by score desc) as ranking
from student s;

查询进阶 - 开窗函数 - row_number
select s.id id,s.name name,s.age age,s.score score,s.class_id class_id,ROW_NUMBER() over (partition by class_id order by score desc) as row_number
from student s;

开窗函数 - lag / lead
select s.id id,s.name name,s.age age,s.score score,s.class_id class_id,
LAG(name,1,null) over (partition by class_id order by score desc) as prev_name,
LEAD(name,1,null) over (partition by class_id order by score desc) as next_name
from student s;

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

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

相关文章

14.scala隐式转换

目录 概述实践代码执行结果 结束 概述 隐式转换:偷偷的(隐式)对现有功能进行增强(转换) 实践 代码 package com.fun.scalaimport java.io.File import scala.io.Sourceobject ImplicitApp {def main(args: Array[String]): Unit {// implicit 2 to 等价 &…

vuecli3 执行 npm run build 打包命令报错:TypeError: file.split is not a function

问题 今天有个项目在打包的时候遇到了一个问题,就是执行 npm run build 命令的时候报错了,如下: 解决 我排查了一下,模拟代码如下:在打包的时候用了 MinChunkSizePlugin const webpack require("webpack"…

LabVIEW多任务实时测控系统

LabVIEW多任务实时测控系统 面对现代化工业生产的复杂性和多变性,传统的测控系统已难以满足高效、精准、可靠的监控和控制需求。因此,开发一种基于LabVIEW的智能测控系统,能够提高生产效率,保证生产安全,是解决现代工…

ubuntu 没有屏幕安装QT(SSH远程登陆下)

1背景说明 需要在SSH登陆的ubuntu远程上安装QT,但是远程电脑没有屏幕,报了这个错误“QXcbConnection: Could not connect to display”。 2网上搜索有2种解决方案 由于远程服务器没有配置屏幕,都失败了 2.1配置屏幕关闭 vim ~/.bashrc …

打卡今天学习的命令 (linux

1.1 cp - 复制文件或目录 cp source destination cp -r source_directory destination # 递归复制目录及其内容1.2 rm - 删除文件或目录 rm file rm -r directory # 递归删除目录及其内容1.3 mv - 移动/重命名文件或目录 mv source destination mv old_name new_name # 重…

怎么清理电脑内存?详细图文教程分享!

“我的电脑用了才不到一年,现在内存总是不足。想问问大家平常遇到电脑内存不足的情况时有什么好用的清理方法吗?” 随着电脑使用时间的增长,内存占用可能会不断增加,导致电脑运行缓慢。为了保持电脑的良好性能,定期清理…

手把手教你实现Kmeans聚类,不使用MATLAB工具箱,纯手写matlab代码免费获取,UCI数据集为例...

K均值(K-means)是一种常用的聚类算法,用于将数据集划分为K个不同的组(簇),使得每个数据点属于与其最近的均值点所代表的簇。K均值算法的基本思想是通过迭代优化,将数据点分配到K个簇中&#xff…

C语言的联合体:一种节省内存的数据结构

在C语言中,联合体(union)是一种特殊的数据结构,它允许我们在相同的内存位置存储不同的数据类型。这意味着联合体中的所有成员都共享同一块内存空间,因此它们不能同时存储其各自的值。联合体的主要目的是节省内存&#…

【RT-DETR有效改进】重参数化模块DiverseBranchBlock助力特征提取(附代码 + 修改教程)

👑欢迎大家订阅本专栏,一起学习RT-DETR👑 一、本文介绍 本文给大家带来的是改进机制是一种替换多元分支模块(Diverse Branch Block),Diverse Branch Block (DBB) 是一种用于增强卷积神经网络性能的结构…

Duplicate entry ‘1xx-2xx-3xx-4xx‘ for key ‘uniq_index‘的解决方法

我在往sql数据库新增数据的时候,碰到报错类似标题。 意思大概是插入的数据重复了,下面分享两种解决办法。 第一种 找到某一节对应的字段,然后在原sql语句里改动这一节的数据,重新执行新增操作。 比如ABC20240208-aaa-yangguang-…

牛客网SQL进阶137:第二快/慢用时之差大于试卷时长一半的试卷

官网链接: 第二快慢用时之差大于试卷时长一半的试卷_牛客题霸_牛客网现有试卷信息表examination_info(exam_id试卷ID, tag试卷类别,。题目来自【牛客题霸】https://www.nowcoder.com/practice/b1e2864271c14b63b0df9fc08b559166?tpId240 0 问题描述 试…

基于tomcat的https(ssl)双向认证

一、背景介绍 某个供应商服务需要部署到海外,如果海外多个地区需要部署多个服务,最好能实现统一登录,这样可以减轻用户的使用负担(不用记录一堆密码)。由于安全问题(可能会泄露用户数据)&#x…

【数据结构】二叉树的三种遍历(非递归讲解)

目录 1、前言 2、二叉树的非递归遍历 2.1、先序遍历 2.2、中序遍历 2.3、后序遍历 1、前言 学习二叉树的三种非递归遍历前,首先来了解一下递归序: 递归序就是按照先序遍历的顺序,遇到的所有结点按顺序排列,重复的结点也必须记…

Debian系统中挂载一个数据盘

如果你想在Debian系统中挂载一个名为sdb的数据盘,你可以按照以下步骤操作。请注意,这里假设sdb是整个磁盘的设备名,而不是特定的分区。如果你想要挂载磁盘上的特定分区,设备名可能会是sdb1、sdb2等。 如下是我执行成功得命令&…

深度学习(14)--x.view()详解

在torch中,常用view()函数来改变tensor的形状 查询官方文档: torch.Tensor.view — PyTorch 2.2 documentationhttps://pytorch.org/docs/stable/generated/torch.Tensor.view.html#torch.Tensor.view示例 1.创建一个4x4的二维数组进行测试 x torch.…

containerd中文翻译系列(十)镜像验证

下面将介绍默认的 "bindir"ImageVerifier插件实现。 要启用图像验证,请在 containerd 配置中添加类似下面的一段: [plugins][plugins."io.containerd.image-verifier.v1.bindir"]bin_dir "/opt/containerd/image-verifier/b…

NC6X单点登录设计文档说明

前言 因为业务场景需要,第三方系统有些工作需要经常到NC系统里做,如果每次去NC系统做业务单据,都需要反复登录,导致客户使用体验不是很好,所以需要开发实现从第三方系统单点登录到NC系统,提高客户满意度。 …

最短路径dfs,数组模拟邻接表

给定一个 n个节点的树。节点编号为 1∼n。树中所有边均为双向边,且长度均已知。你需要从 1 号点出发,沿着一条路径遍历树中所有点,路径中可以包含重复的点和边。要求,你的行程总长度应尽可能短。请你计算,你所需的行程…

零基础学编程系列,从入门到精通,中文编程开发语言工具下载,编程构件容器件之控制面板构件用法

零基础学编程系列,从入门到精通,中文编程开发语言工具下载,编程构件容器件之控制面板构件用法 一、前言 编程入门视频教程链接 https://edu.csdn.net/course/detail/39036 编程工具及实例源码文件下载可以点击最下方官网卡片——软件下载…

Bug2- Hive元数据启动报错:主机被阻止因连接错误次数过多

错误代码: 在启动Hive元数据时,遇到了以下错误信息: Caused by: java.sql.SQLException: null, message from server: "Host 192.168.252.101 is blocked because of many connection errors, unblock with mysqladmin flush-hosts&qu…