MySQL8.0 ROW_NUMBER 调用案例

news2024/11/27 13:32:02

ROW_NUMBER()是一个窗口函数或分析函数,它为从1开始应用的每一行分配一个序号。
在这里插入图片描述
创建表和生成所需要的数据

CREATE TABLE chapter11 ( shopname VARCHAR(255) NULL, sales
VARCHAR(255) NULL, sale_date DATE NULL );

INSERT INTO chapter11 (shopname, sales, sale_date) VALUES(‘A’, ‘1’,
‘2020-01-01’); INSERT INTO chapter11 (shopname, sales, sale_date)
VALUES(‘B’, ‘3’, ‘2020-01-01’); INSERT INTO chapter11 (shopname,
sales, sale_date) VALUES(‘C’, ‘5’, ‘2020-01-01’); INSERT INTO
chapter11 (shopname, sales, sale_date) VALUES(‘A’, ‘7’, ‘2020-01-02’);
INSERT INTO chapter11 (shopname, sales, sale_date) VALUES(‘B’, ‘9’,
‘2020-01-02’); INSERT INTO chapter11 (shopname, sales, sale_date)
VALUES(‘C’, ‘2’, ‘2020-01-02’); INSERT INTO chapter11 (shopname,
sales, sale_date) VALUES(‘A’, ‘4’, ‘2020-01-03’); INSERT INTO
chapter11 (shopname, sales, sale_date) VALUES(‘B’, ‘6’, ‘2020-01-03’);
INSERT INTO chapter11 (shopname, sales, sale_date) VALUES(‘C’, ‘8’,
‘2020-01-03’);

1、按照销量进行排序

SELECT * from chapter11   order by sales ;

在这里插入图片描述


第二种写法:
SELECT   
    t.shopname,              -- 商店名称  
    t.sales,                 -- 销售额  
    t.sale_date ,              -- 销售日期    
-- 使用 ROW_NUMBER() 函数对结果进行编号,按照 sales 列的值进行排序  
 ROW_NUMBER() over(order by t.sales) as rank_num   
FROM chapter11 t

在这里插入图片描述

2、获取各A、B、C自组内的一个排名结果

	

SELECT   
    t.shopname, -- 商店名称  
    t.sales, -- 销售额  
    t.sale_date, -- 销售日期  
    -- 使用ROW_NUMBER()函数为每个商店生成一个行号,PARTITION by shopname按照商店名称进行分组,然后行号的生成基于销售额进行排序  
    ROW_NUMBER() over(PARTITION by shopname ORDER BY sales)  as rm  
FROM   
    chapter11 t;
    
#ROW_NUMBER(): 这是一个窗口函数,用于为每一行生成一个唯一的数字。

在这里插入图片描述
3、获取每个店铺销量最差的一天数据。

SELECT   
    t.shopname,  
    t.sales,  
    t.sale_date  
FROM   
    (  
        SELECT   
            shopname,  
            sales,  
            sale_date,  
            ROW_NUMBER() OVER (PARTITION BY shopname ORDER BY sales ) AS rm  
        FROM   
            chapter11  
    ) t  
WHERE   
    t.rm = 1;

第二种写法:

	with sales_bad  as(
	SELECT   
    t.shopname, -- 商店名称  
    t.sales, -- 销售额  
    t.sale_date, -- 销售日期  
    -- 使用ROW_NUMBER()函数为每个商店生成一个行号,PARTITION by shopname按照商店名称进行分组,然后行号的生成基于销售额进行排序  
    ROW_NUMBER() over(PARTITION by shopname ORDER BY sales)  as rm  
FROM   
    chapter11 t;
	)
	SELECT * from sales_bad  where rm =1

在这里插入图片描述

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

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

相关文章

C语言之scanf浅析

前言&#xff1a; 当有了变量&#xff0c;我们需要给变量输入值就可以使用scanf函数&#xff0c;如果需要将变量的值输出在屏幕上的时候可以使用printf函数&#xff0c;如&#xff1a; #include <stdio.h> int main() {int score 0;printf("请输⼊成绩:");sc…

《2023年企业IoT和OT威胁报告》:物联网恶意软件攻击增长400%

内容概括&#xff1a; 物联网&#xff08;IoT&#xff09;设备无疑改变了我们生活、工作和管理运营技术&#xff08;OT&#xff09;环境的方式。总体而言&#xff0c;到2027年&#xff0c;全球物联网设备数量预计将超过290亿&#xff0c;比2023年的167亿大幅增加。设备和智能技…

中文数字的魅力:古今中外的传承与创新

一、引言 中文数字&#xff0c;作为世界上最古老、最具特色的数字系统之一&#xff0c;已经伴随着中华文化走过了几千年的历史。它既是我们祖先智慧的结晶&#xff0c;也是现代生活中不可或缺的元素。本文将从各个方面介绍和解释中文数字的用途&#xff0c;带领大家领略中文数…

Python编程新技能:如何优雅地实现水仙花数?

水仙花数&#xff08;Narcissistic number&#xff09;也被称为阿姆斯特朗数&#xff08;Armstrong number&#xff09;或自恋数等&#xff0c;它是一个非负整数&#xff0c;其特性是该数的每个位上的数字的n次幂之和等于它本身&#xff0c;其中n是该数的位数。简单来说&#x…

渗透线上下料控制(SCL源代码)

有关渗透线的其它详细介绍请参考下面链接文章&#xff1a; https://rxxw-control.blog.csdn.net/article/details/133611151https://rxxw-control.blog.csdn.net/article/details/133611151这里的渗透线上下料属于整个渗透线流程里的最前端和最后端&#xff0c;分别负责待处理…

Unity坦克大战开发全流程——游戏场景——主玩家——可击毁箱子

游戏场景——主玩家——可击毁箱子 添加特效 CubeObj的代码如下 using System.Collections; using System.Collections.Generic; using UnityEngine;public class CubeObj : MonoBehaviour {//关联的奖励物品public GameObject[] rewardObjects;//关联的特效public GameObject …

大模型入门0: 基础知识

transformerscaling law分布式训练 自然语言处理包括几大任务 NLP: 文本分类&#xff0c;词性标注&#xff0c;信息检索NLG&#xff1a;机器翻译&#xff0c;自动摘要&#xff0c;问答QA、对话机器ChatBot下游任务: 词性标注&#xff08;POS&#xff09;&#xff0c;句法分析…

计算机网络(1)

计算机网络&#xff08;1&#xff09; 小程一言专栏链接: [link](http://t.csdnimg.cn/ZUTXU) 计算机网络和因特网&#xff08;1&#xff09;因特网概念解读服务常见的服务 协议网络边缘特点强调 网络核心特点强调 小程一言 我的计算机网络专栏&#xff0c;是自己在计算机网络…

Django开发3

Django开发3 Django开发编辑用户9.靓号管理9.1 表结构9.2 靓号列表9.3 新建靓号9.4 编辑靓号9.5 搜索手机号9.6 分页 10.时间插件11.ModelForm和BootStrap操作 各位小伙伴想要博客相关资料的话关注公众号&#xff1a;chuanyeTry即可领取相关资料&#xff01; Django开发 部门管…

simulink代码生成(五)——ePWM模块初级应用

前面分别讲到了SCI及ADC的配置及使用&#xff0c;现在梳理一下ePWM的配置和使用&#xff1b; 先打一些基础的DSP28335的基础知识&#xff1b; F28335 关于ePWM中断与SOC采样信号的一些思考_socasel-CSDN博客 F28335 ePWM模块简介——TMS320F28335学习笔记&#xff08;四&…

普通人变现天花板,月入10w是什么体验?

我是顺哥&#xff08;shundazy1&#xff09;&#xff0c;一个三观超正的6年互联网创业者&#xff0c;信因果、利他思维一直伴随着我的商业生涯。 经历过无数风风雨雨&#xff0c;实现过年入几百万&#xff0c;也曾在一年内亏了100多万。 我们项目的网站 首先介绍我们项目干啥…

消融实验(ablation study)——全网最全解读

消融实验&#xff08;ablation study&#xff09; 是什么优势与劣势案例总结 是什么 消融实验是一种科学研究方法&#xff0c;用于确定一个条件或参数对结果的影响程度。当研究者提出了一个新的方案或方法时&#xff0c;消融实验通过逐一控制一个条件或参数&#xff0c;来观察…

24届春招实习必备技能(一)之MyBatis Plus入门实践详解

MyBatis Plus入门实践详解 一、什么是MyBatis Plus? MyBatis Plus简称MP&#xff0c;是mybatis的增强工具&#xff0c;旨在增强&#xff0c;不做改变。MyBatis Plus内置了内置通用 Mapper、通用 Service&#xff0c;仅仅通过少量配置即可实现单表大部分 CRUD 操作&#xff0…

2024年山东省中职“网络安全”试题——B-3:Web安全之综合渗透测试

B-3&#xff1a;Web安全之综合渗透测试 服务器场景名称&#xff1a;Server2010&#xff08;关闭链接&#xff09; 服务器场景操作系统&#xff1a;"需要环境有问题加q" 使用渗透机场景Kali中的工具扫描服务器&#xff0c;通过扫描服务器得到web端口&#xff0c;登陆…

Kasada p.js (x-kpsdk-cd、x-kpsdk-ct、integrity)

提供x-kpsdk-cd的API服务 详细请私信~ 可试用~ V:zhzhsgg 一、简述 integrity是通过身份验证Kasada检测机器人流量后获得的一个检测结果&#xff08;数据完整性&#xff09; x-kpsdk-cd 是经过编码计算等等获得。当你得到正确的解决验证码值之后&#xff0c;解码会看到如下图…

iToF人脸识别

iToF(间接飞行时间)是一种测量光飞行时间的技术,主要应用于人脸识别。 iToF人脸识别技术在哪些场景下会用到 iToF人脸识别技术可以应用于许多场景,以下是一些常见的应用场景: 平安城市:在城市监控系统中,iToF人脸识别技术可以用于实时监控、目标检测和识别,以及异常行为…

关于 bringup sensor 时,曝光时间异常的问题排查

1、问题背景 这两天在配置 sc223a 这颗 sensor 的驱动&#xff0c;按 datasheet 的要求配置 sensor 的曝光后&#xff0c;发现最大曝光时间增加了一倍&#xff0c; sensor setting 用的是30fps &#xff0c;理论上最大的绝对曝光时间应该是 33ms 才正确&#xff0c;但实际用 …

【Redis-02】Redis数据结构与对象原理 -上篇

Redis本质上是一个数据结构服务器&#xff0c;使用C语言编写&#xff0c;是基于内存的一种数据结构存储系统&#xff0c;它可以用作数据库、缓存或者消息中间件。 我们经常使用的redis的数据结构有5种&#xff0c;分别是&#xff1a;string(字符串)、list(列表)、hash(哈希)、s…

typro绘制uml

1. 流程图 1.1 普通流程图 1.1.1 横向 graph LRA[方形] -->B(圆角)B --> C{条件a}C -->|a1| D[结果1]C -->|a2| E[结果2]F[横向流程图]#mermaid-svg-L4kGCoCDf9uKYThC {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#33…

AIGC开发:调用openai的API接口实现简单机器人

简介 开始进行最简单的使用&#xff1a;通过API调用openai的模型能力 OpenAI的能力如下图&#xff1a; 文本生成模型 OpenAI 的文本生成模型&#xff08;通常称为生成式预训练 Transformer 或大型语言模型&#xff09;经过训练可以理解自然语言、代码和图像。这些模型提供文…