力扣算法之1070. 产品销售分析 III

在这里插入图片描述
力扣传送门

题解

选出每个售出过的产品 第一年 销售的 产品 id、年份、数量 和 价格,很明显就是个排序问题

我的解
SELECT product_id,year as first_year,quantity,price FROM (
SELECT sale_id,RANK() OVER(PARTITION BY product_id ORDER BY [year] asc  ) AS num,
year,quantity,price,product_id
FROM Sales
) AS c WHERE num=1
我的解注解

直接分组排序,取product_id 且year排序,得到首年的值,这个题目有个坑,一定要注意(sale_id, year) 是这张表的主键(具有唯一值的列的组合),它是两个列组成的唯一值,也就是说,首年的数据可能会出现两次,所以这里的分组排序,我们只能用RANK()和DENSE_RANK(),不能使用ROW_NUMBER(),对这三个不熟悉的,去以下链接补充知识
知识传送门

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

软件测试人员如何规划自己的职业发展路线

在这个飞速发展的时代中,我们每个人都渴望在各自的领域里找到属于自己的一片天空,而对于那些致力于软件测试的朋友们而言,规划好自己的职业发展路线显得尤为重要。 一、明确目标 首先,我们需要确立一个明确的职业发展目标。对于软…

【Spring Cloud】API网关

目录 什么是API网关为什么需要API网关前言问题列表 API网关解决了什么问题常见的网关解决方案NginxLuaSpring Cloud Netflix ZuulSpringCloud Zuul的IO模型弊端 Spring Cloud Gateway 第二代网关——GatewayGateway的特征Spring Cloud Gateway的处理流程Spring Cloud Gateway的…

将 MAX30100 脉搏血氧仪与 Arduino 连接

在这个项目中,我们将MAX30100 脉搏血氧仪传感器与 Arduino 连接起来。MAX30100 传感器能够测量血氧和心率。我们可以使用任何显示器(如162 LCD 显示器)来查看SpO2和BPM的值。血氧浓度(称为 SpO2)以百分比为单位测量&am…

在今日头条上写文章:ChatGPT完整使用教程

了解如何充分运用ChatGPT进行创作 简介 在今日头条上发布文章变得越来越方便。本文旨在详细解析如何运用ChatGPT来创作文章,并提供全方位的使用指南及常见问题的答疑。 第一步:基础准备 确保你已注册今日头条账号。 登录ChatGPT并与你的今日头条账号进…

Python 应用开发:Streamlit 布局篇(容器布局)

st.columns 以并列方式插入容器。 插入若干并排排列的多元素容器,并返回一个容器对象列表。 要在返回的容器中添加元素,可以使用 with 符号(首选)或直接调用返回对象的方法。请参见下面的示例。 列只能放置在其他列的内部&…

想用Python做OCR?看看这篇文章

OCR是Optical Character Recognition的缩写,中文名为光学字符识别。它是一种通过计算机技术对图像或扫描文档中的文字进行识别和理解的过程。OCR技术可以将图像中的文字转换为可编辑、可搜索的文本,使得计算机能够理解和处理这些文字信息。 OCR技术通常…

【技术实操】银河高级服务器操作系统实例分享,达梦数据库服务器 oom 问题分析

1. 服务器环境以及配置 【 机型】 处理器: HUAWEIKunpeng 920 5220 内存: 400518528 kB 主板型号: Chaoqiang K620 series 整机类型/架构: ARM BIOS 版本: KL4.41.028.TF.220224.R 固件版本: KL4.41…

关于C++的IO流简单总结

基础IO流 C的IO以面向对象的形式实现, 同时兼容了C语言面向过程的IO方式 C 标准库提供了四个基本流对象: cin:用于从标准输入(通常是键盘)读取数据。 cout:用于向标准输出(通常是控制台)写入…

IGS 天线文件内容解读

文章目录 Part.I IntroductionChap.I 预备知识 Part.II 文件的下载Chap.I 下载地址Chap.II 文件类型 Part.III 文件内容解读Chap.I 文件头Chap.II 数据块说明Chap.III 数据块示例 Reference Part.I Introduction 本文将对 IGS 发布的天线文件 *.atx 进行一个简要的解读。 Chap…

QTreeWidget 详解

QTreeWidget 详解 QTreeWidget 是 PyQt5 框架中的一个重要部件,它提供了树形结构的视图,可以用于显示层级数据。以下是 QTreeWidget 的详细讲解,包括基本用法、主要方法和属性以及如何与其他组件进行交互。 基本用法 导入模块 要使用 QTree…

QListWidget详解

QListWidget详解 QListWidget 是 PyQt5 中一个方便的部件,用于创建和管理列表。它继承自 QListView,并提供了一些高级功能,使得添加和管理列表项更加简单。以下是 QListWidget 的详解,包括基本用法、主要方法和属性以及如何与其他…

安装PyTorch详细步骤

💥注意事项: CPU版和GPU版选一个进行安装即可 如果有Nvidia显卡,则安装cuda版本的PyTorch,如没有nvidia显卡,则安装cpu版。 目前常见的深度学习框架有很多,最出名的是:PyTorch(faceb…

hypack如何采集多波束数据?(下)

多波束测量模块 1)记录多波束和辅助传感器的数据; 2)显示实时改正后的数据和数据质量信息。 ​编辑​ 测量准备 1)设置大地测量参数和硬件设置; 2)计划测线 计划测线是一定间距的平行线,…

DuGa-DIT论文翻译

Dual Gated Graph Attention Networks with Dynamic Iterative Training for Cross-Lingual Entity Alignment 双门控图注意力网络与跨语言实体对齐的动态迭代训练 Abstract 近年来,跨语言实体对齐引起了相当大的关注。过去使用传统方法来匹配实体的研究都有一个…

传输大咖26|想找可替代FTP升级的国产信创软件?这个一定要看

​在这个信息技术飞速发展的时代,传统的文件传输协议FTP已经逐渐显露出它的局限性。特别是在安全性、传输效率和可扩展性方面,FTP似乎已经无法满足企业日益增长的需求。因此,寻找一款能够替代FTP的国产信创软件,成为了众多企业的迫…

8个Web组件库强烈推荐,大厂设计师的秘密武器

有TDesign、Arco Design、Ant Design、Material 随着Design等优秀web组件库的发布,设计师可能会认为大厂商之间的web组件库差别不大。其实大厂商的产品线很多,业务复杂。设计系统是对以往项目经验的深刻沉淀,可以支撑业务逻辑,保证…

如何本地 Debug React 源码

日常开发过程中,有时 debug react 源代码进行问题排查。一种方案是直接把通过 html 引入进来,另外一种是编译并通过 yarn 链接到项目中,本地将介绍如何通过这两种方法进行代码 Debug。 页面引入源代码方式 这种方式比较简单,直接…

【项目】教你手把手完成博客系统(三)显示用户信息 | 实现退出登录 | 实现发布博客

文章目录 教你手把手完成博客系统(三)7.实现显示用户信息1.约定前后端交互接口2.前端通过ajax发起请求3.服务器处理请求 8.实现退出登录1.约定前后端的接口2.前端发起请求3.服务器处理请求 9.实现发布博客1.约定前后端的交互接口2.前端构造请求3.服务器处…

前端面试问题:子组件的某一个方法调用执行逻辑由父组件的属性状态变化来决定

面试官:请你讲讲你在该项目中遇到的问题是什么?你怎么解决这个问题? 答:我的回答:该项目的实现过程中我确实遇到了问题:【我会给大家整理回答思路和角度,那那么遇到这样的问题也可借鉴这种思路…

RAG架构的数据准备流程

虽然现成的大型语言模型 (LLM) 功能强大,但企业发现,根据其专有数据定制 LLM 可以释放更大的潜力。检索增强生成 (RAG) 已成为这种定制的主要方法之一。RAG 模型将大型语言模型强大的语言理解能力与检索组件相结合,使其能够从外部数据源收集相…