当前位置: 首页 > news >正文

sqlserver 联表查询、子查询、窗口函数、聚合函数等概念与例子

with cte as的用法

查询的一个有用工具,允许创建临时命名结果集,可在查询中多次引用相同的子查询结果,可以提高查询的可读性和维护性

WITH cte_name (column1, column2, ...) AS (-- 这里是子查询SELECT column1, column2, ...FROM your_tableWHERE some_condition
)
-- 主查询
SELECT *
FROM cte_name;

子查询

  • 标量子查询:返回单个值,通常用于比较运算符中,他们嵌套在主查询的条件中
-- 查找所有工资高于公司平均工资的员工
SELECT employee_name
FROM employees
WHERE salary > (SELECT AVG(salary) FROM employees);
  • 行子查询: 返回单行多列,通常将子查询的结果集整行引入主查询中
  • 列子查询:返回单列多行,通常将子查询结果集作为一个值列表传递给主查询。
  • 表子查询:多表联查

窗口函数

rank over (partition by order_code order by dd desc)
partition by 指定分区的表达式,如果不指定,整个结果集将作为一个分区,指定分区将使排名在每个分区内单独计算
注意:rank()函数可能导致排名值不连续,多个行具有相同的值,将共享相同的排名,使用dense_rank()可去重

窗口函数原理

在不破坏原始数据行的情况下对每一行进行聚合或分析
排序(order by)、分组(partition by)、计算(针对分组内数据行,而不是整个结果集)、结果(窗口函数的结果值附加到每一行,意味着每个数据行都有一个关联的窗口函数结果)

常用聚合函数

sum、arg等

窗口函数分类

排名函数
SELECT employee_name, salary, RANK() OVER (PARTITION BY department ORDER BY salary DESC) AS ranking
FROM employees;

累积函数
SELECT order_date, order_amount, SUM(order_amount) OVER (ORDER BY order_date) AS cumulative_total
FROM orders;

分组聚合函数
SELECT employee_name, department, salary, AVG(salary) OVER (PARTITION BY department) AS avg_salary
FROM employees;

行号函数(通常用于合并字段值相同的行)
SELECT product_name, ROW_NUMBER() OVER (ORDER BY sales_volume DESC) AS row_num
FROM products;

相关文章:

sqlserver 联表查询、子查询、窗口函数、聚合函数等概念与例子

with cte as的用法 查询的一个有用工具,允许创建临时命名结果集,可在查询中多次引用相同的子查询结果,可以提高查询的可读性和维护性 WITH cte_name (column1, column2, ...) AS (-- 这里是子查询SELECT column1, column2, ...FROM your_ta…...

GO学习之 消息队列(Kafka)

GO系列 1、GO学习之Hello World 2、GO学习之入门语法 3、GO学习之切片操作 4、GO学习之 Map 操作 5、GO学习之 结构体 操作 6、GO学习之 通道(Channel) 7、GO学习之 多线程(goroutine) 8、GO学习之 函数(Function) 9、GO学习之 接口(Interface) 10、GO学习之 网络通信(Net/Htt…...

搭建自己的OCR服务,第三步:PPOCRLabel标注工具安装

一、安装说明 安装好了PaddleOCR后,还需要安装PPOCRLabel这个标注工具,想要自己训练模型的话,有个标注工具会起很大作用。 尤其是PPOCRLabel就是跟PaddleOCR配套的标注工具,同样是开源的。 在下载 PaddleOCR 整个源码中&#x…...

Java学习笔记37——网络编程01

网络编程入门 网络编程入门网络编程概述网路编程的三要素ip地址InetAddress类的使用端口 网络编程入门 网络编程概述 计算机网络 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理…...

powershell 搜索文本并返回行号

目录 powershell 搜索文本并返回行号 python调用powershell搜索文本并返回行号; powershell 搜索文本并返回行号 $keyword PS dir "d:\" -Filter "*.txt" -Recurse | foreach {$line 0 $fileName $_.FullNameGet-Content $fileName | f…...

网络原理

网络原理 传输层 UDP 特点 特点:无连接,不可靠,面向数据报,全双工 格式 怎么进行校验呢? 把UDP数据报中的源端口,目的端口,UDP报文长度的每个字节,都依次进行累加 把累加结果&a…...

力扣(LeetCode)算法_C++——同构字符串

给定两个字符串 s 和 t ,判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相…...

网管实战⑼:配置华为S5720交换机

配置好汇聚交换机后,需要根据单位情况配置具体的接入交换机。 自从2019年12月底配置好交换机后,基本上都没有怎么操作交换机了。那时候使用的是H3C交换机,主要是H3C S7706、H3C S5120、H3C S5130、H3C S5500、H3C S3600等型号的交换机&#x…...

文件上传漏洞第十六关十七关

第十六关 第十七关 第十六关 直接上传php文件判断限制方式: 同第十五关白名单限制 第十六关源码: 代码逻辑判断了后缀名、content-type,以及利用imagecreatefromgif判断是否为gif图片,最后再做了一次二次渲染 二次渲染图片马&…...

Try llama2 in NUC (by quqi99)

作者:张华 发表于:2023-09-06 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明 ( http://blog.csdn.net/quqi99 ) 据说现在在PC机上可以运行llama2大模型了, Way 1 于是照…...

强大易用的开源 建站工具Halo

特点 可插拔架构 Halo 采用可插拔架构,功能模块之间耦合度低、灵活性提高。支持用户按需安装、卸载插件,操作便捷。同时提供插件开发接口以确保较高扩展性和可维护性。 ☑ 支持在运行时安装和卸载插件 ☑ 更加方便地集成三方平台 ☑ 统一的可配置设置表…...

如何使用vuex

1.安装vuex 2.在store文件夹内写index.js 此处tab是自定义的文件 import Vue from "vue" import Vuex from "vuex" import tab from "./tab"Vue.use(Vuex)export default new Vuex.Store({modules:{tab} }) 3.在store文件夹内写tab.js(自定义…...

动手深度学习——Windows下的环境安装流程(一步一步安装,图文并配)

目录 环境安装官网步骤图文版安装Miniconda下载包含本书全部代码的压缩包使用conda创建虚拟(运行)环境使用conda创建虚拟环境并安装本书需要的软件激活之前创建的环境打开Jupyter记事本 环境安装 文章参考来源:http://t.csdn.cn/tu8V8 官网…...

个人博客系统-测试用例+自动化测试

一、个人博客系统测试用例 二、自动化测试 使用selenium4 Junit5单元测试框架&#xff0c;来进行简单的自动化测试。 1. 准备工作 &#xff08;1&#xff09;引入依赖&#xff0c;此时的pom.xml文件&#xff1a; <?xml version"1.0" encoding"UTF-8&quo…...

C语言文件读写常用函数

文章目录 1. fopen函数2. fclose函数3. fgetc函数4. fgets函数5. fputc函数6. fputs函数7. fprintf函数8. fscanf函数9. fseek函数10. ftell函数 1. fopen函数 返回值&#xff1a;文件指针&#xff08;FILE*&#xff09;参数&#xff1a;文件名&#xff08;包括文件路径&#…...

【C++基础】实现日期类

​&#x1f47b;内容专栏&#xff1a; C/C编程 &#x1f428;本文概括&#xff1a; C实现日期类。 &#x1f43c;本文作者&#xff1a; 阿四啊 &#x1f438;发布时间&#xff1a;2023.9.7 对于类的成员函数的声明和定义&#xff0c;我们在类和对象上讲到过&#xff0c;需要进行…...

C语言程序设计—通讯录实现

本篇文章主要是实现一个简易的通讯录&#xff1a; 功能如下&#xff1a; 添加用户修改用户删除用户查找用户&#xff08;可重名&#xff09;按名字或年龄排序显示用户保存通讯录日志追加 有如下知识点&#xff1a; 动态数组结构体枚举自定义标识符和宏文件打开与存储函数指针…...

实战:大数据Flink CDC同步Mysql数据到ElasticSearch

文章目录 前言知识积累CDC简介CDC的种类常见的CDC方案比较 Springboot接入Flink CDC环境准备项目搭建 本地运行集群运行将项目打包将包传入集群启动远程将包部署到flink集群 写在最后 前言 前面的博文我们分享了大数据分布式流处理计算框架Flink和其基础环境的搭建&#xff0c…...

B-Tree 索引和 Hash 索引的对比

分析&回答 B-Tree 索引的特点 B-tree 索引可以用于使用 , >, >, <, < 或者 BETWEEN 运算符的列比较。如果 LIKE 的参数是一个没有以通配符起始的常量字符串的话也可以使用这种索引。 有时&#xff0c;即使有索引可以使用&#xff0c;MySQL 也不使用任何索引。…...

入门Python编程:了解计算机语言、Python介绍和开发环境搭建

文章目录 Python入门什么是计算机语言1. 机器语言2. 符号语言&#xff08;汇编&#xff09;3. 高级语言 编译型语言和解释型语言1. 编译型语言2. 解释型语言 Python的介绍Python开发环境搭建Python的交互界面 python学习专栏python基础知识&#xff08;0基础入门&#xff09;py…...

深度解析Redisson框架的分布式锁运行原理与高级知识点

推荐阅读 项目实战:AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI绘画、AI讲话、翻译,GPU点亮AI想象空间 资源分享 史上最全文档AI绘画stablediffusion资料分享 AI绘画关于SD,MJ,GPT,SDXL百科全书 AI绘画 stable…...

C#扩展方法

参数列表中this的这种用法是在.NET 3.0之后新增的一种特性---扩展方法。通过这个属性可以让程序员在现有的类型上添加扩展方法&#xff08;无需创建新的派生类型、重新编译或者以其他方式修改原始类型&#xff09;。 扩展方法是一种特殊的静态方法&#xff0c;虽然是静态方法&a…...

uniapp 高度铺满全屏

问题&#xff1a;在有uni-tabbar的情况下&#xff0c;页面铺满剩下的部分 <template><view :style"{height:screenHeightpx}" class"page"></view> </template> <script>export default {data() {return {screenHeight: &q…...

UG\NX二次开发 判断向量在指定的公差内是否为零,判断是否是零向量 UF_VEC3_is_zero

文章作者:里海 来源网站:王牌飞行员_里海_里海NX二次开发3000例,里海BlockUI专栏,C\C++-CSDN博客 简介: UG\NX二次开发 判断向量在指定的公差内是否为零,判断是否是零向量 UF_VEC3_is_zero 效果: 代码: #include "me.hpp"void ufusr(char* param, int* retco…...

2023年MySQL实战核心技术第一篇

目录 四 . 基础架构&#xff1a;一条SQl查询语句是如何执行的&#xff1f; 4.1 MySQL逻辑架构图&#xff1a; 4.2 MySQL的Server层和存储引擎层 4.2.1 连接器 4.2.1.1 解释 4.2.1.2 MySQL 异常重启 解决方案&#xff1a; 4.2.1.2.1. 定期断开长连接&#xff1a; 4.2.1.2.2. 初始…...

hivesql执行过程

语法解析 SemanticAnalyzer SemanticAnalyzer是Hive中的语义分析器&#xff0c;负责检查Hive SQL程序的语义是否正确。SemanticAnalyzer会对Hive SQL程序进行以下检查&#xff1a; 检查过程 语法检查 SemanticAnalyzer会检查Hive SQL程序的语法是否正确&#xff0c;包括关…...

C语言学习:8、深入数据类型

数据超过类型规定的大小怎么办 C语言中&#xff0c;如果需要用的整数大于int类型的最大值了怎么办&#xff1f; 我们知道int能表示的最大数是2147483647&#xff0c;最小的数是-2147483648&#xff0c;为什么&#xff1f; 因为字32位系统中&#xff0c;寄存器是32位的&#…...

生成树协议 STP(spanning-tree protocol)

一、STP作用 1、消除环路&#xff1a;通过阻断冗余链路来消除网络中可能存在的环路。 2、链路备份&#xff1a;当活动路径发生故障时&#xff0c;激活备份链路&#xff0c;及时恢复网络连通性。 二、STP选举机制 1、目的&#xff1a;找到阻塞的端口 2、STP交换机的角色&am…...

【LeetCode】312.戳气球

题目 有 n 个气球&#xff0c;编号为0 到 n - 1&#xff0c;每个气球上都标有一个数字&#xff0c;这些数字存在数组 nums 中。 现在要求你戳破所有的气球。戳破第 i 个气球&#xff0c;你可以获得 nums[i - 1] * nums[i] * nums[i 1] 枚硬币。 这里的 i - 1 和 i 1 代表和…...

商业数据分析概论

&#x1f433; 我正在和鲸社区参加“商业数据分析训练营活动” https://www.heywhale.com/home/competition/6487de6649463ee38dbaf58b &#xff0c;以下是我的学习笔记&#xff1a; 学习主题&#xff1a;波士顿房价数据快速查看 日期&#xff1a;2023.9.4 关键概念/知识点&…...

标识设计网站/数据分析师培训机构

1、Log.v 的调试颜色为黑色的&#xff0c;任何消息都会输出&#xff0c;这里的v代表verbose啰嗦的意思&#xff0c;平时使用就是Log.v("",""); 2、Log.d的输出颜色是蓝色的&#xff0c;仅输出debug调试的意思&#xff0c;但他会输出上层的信息&#xff0c;…...

windows2008 iis 网站/电脑全自动挂机赚钱

今天打开vmware下的xp系统&#xff0c;装完了oracle9i&#xff0c;本想ipconfig一下看看ip地址&#xff0c;没成想在cmd下ipconfig之后提示错误&#xff1a;‘ipconfig’不是内部或外部命令&#xff0c;也不是可运行的程序。后来才发现有可能是安装oracle把系统的环境变量给更改…...

展厅设计制作/自动seo系统

CFD-POST出数据方法CFD-PSOT导出数据方法说明&#xff1a;本次教程包含两方面内容&#xff0c;导出一点的数据和导出点云的数据 (有时候在模拟过程中&#xff0c;需要得到一个平面的速度、压力、温度分布情况&#xff0c;可以在平面上按照某个规律取 个点&#xff0c;得到各点的…...

网站icp备案和公安备案的区别/互联网品牌的快速推广

每天和大家来漫谈 Go 语言的相关的一些知识、问题、最佳实践等。 今天是第一天&#xff0c;来说一说 Go Module unknown revision 的问题。 简单介绍下Go Module&#xff0c;它是一个 Go 依赖管理工具。现在我们生成一个可执行文件&#xff0c;它在 go.mod 寻找依赖。 $ go …...

快速建立平台网站开发/注册google账号

这是我在Coursera上的学习笔记。课程名称为《Computer Networks》。出自University of Washington。因为计算机网络才诞生不久。眼下正在以快速在发展。所以有些旧的教材可能都已经跟不上时代了。这门课程在2013年左右录制&#xff0c;知识相对还是比較新的。覆盖了计算机网络中…...

政府门户网站的建设管理/百度推广的四种收费形式

最近物联网都比较的火&#xff0c;因此&#xff0c;特别为各位兄弟姐妹们&#xff0c;奉上一款Mobus协议的测试软件&#xff0c;可以用来做设备的压力测试&#xff0c;和通信测试。 起初软件开发缘由是我们最近在开发一款设备&#xff0c;需要将多个DS18B20并联起来&#xff0c…...