LeetCode 1393.股票的资本损益

Stocks 表:

±--------------±--------+
| Column Name | Type |
±--------------±--------+
| stock_name | varchar |
| operation | enum |
| operation_day | int |
| price | int |
±--------------±--------+
(stock_name, day) 是这张表的主键(具有唯一值的列的组合)
operation 列使用的是一种枚举类型,包括:(‘Sell’,‘Buy’)
此表的每一行代表了名为 stock_name 的某支股票在 operation_day 这一天的操作价格。
此表可以保证,股票的每个“卖出”操作在前一天都有相应的“买入”操作。并且,股票的每个“买入”操作在即将到来的一天都有相应的“卖出”操作。

编写解决方案报告每只股票的 资本损益。

股票的 资本利得/损失 是指一次或多次买卖该股票后的总收益或损失。

以 任意顺序 返回结果表。

结果格式如下所示。

示例 1:

输入:
Stocks 表:
±--------------±----------±--------------±-------+
| stock_name | operation | operation_day | price |
±--------------±----------±--------------±-------+
| Leetcode | Buy | 1 | 1000 |
| Corona Masks | Buy | 2 | 10 |
| Leetcode | Sell | 5 | 9000 |
| Handbags | Buy | 17 | 30000 |
| Corona Masks | Sell | 3 | 1010 |
| Corona Masks | Buy | 4 | 1000 |
| Corona Masks | Sell | 5 | 500 |
| Corona Masks | Buy | 6 | 1000 |
| Handbags | Sell | 29 | 7000 |
| Corona Masks | Sell | 10 | 10000 |
±--------------±----------±--------------±-------+
输出:
±--------------±------------------+
| stock_name | capital_gain_loss |
±--------------±------------------+
| Corona Masks | 9500 |
| Leetcode | 8000 |
| Handbags | -23000 |
±--------------±------------------+
解释:
Leetcode 股票在第一天以1000美元的价格买入,在第五天以9000美元的价格卖出。资本收益=9000-1000=8000美元。
Handbags 股票在第17天以30000美元的价格买入,在第29天以7000美元的价格卖出。资本损失=7000-30000=-23000美元。
Corona Masks 股票在第1天以10美元的价格买入,在第3天以1010美元的价格卖出。在第4天以1000美元的价格再次购买,在第5天以500美元的价格出售。最后,它在第6天以1000美元的价格被买走,在第10天以10000美元的价格被卖掉。资本损益是每次(’Buy’->‘Sell’)操作资本收益或损失的和=(1010-10)+(500-1000)+(10000-1000)=1000-500+9000=9500美元。

# Write your MySQL query statement below
select stock_name, sum(case operationwhen 'Buy' then -pricewhen 'Sell' then priceend
) as capital_gain_loss
from Stocks group by stock_name;

# Write your MySQL query statement below
select stock_name, sum(case when operation = 'Buy' then -pricewhen operation = 'Sell' then priceend
) as capital_gain_loss
from Stocks group by stock_name;

# Write your MySQL query statement below
select stock_name, sum(IF(operation = 'Buy', -price, price)) as capital_gain_loss
from Stocks group by stock_name;

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

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

相关文章

windows 中, bash: conda: command not found(已解决)

git bash 中运行conda命令,出现这种错误,原因是你没有在git bash中 配置conda,导致git bash无法找到conda 那就配置一下,找到你的conda的安装位置下的bash.sh文件,一般在安装位置(我的安装在C盘的自定义路径…

RocketMQ生产环境常见问题分析与总结

RocketMQ生产环境常见问题分析与总结 如何保证消息不丢失 消息丢失场景 对于跨网络的节点可能会丢消息,因为MQ存盘都会先写入OS的PageCache中,然后再让OS进行异步刷盘,如果缓存中的数据未及时写入硬盘就会导致消息丢失 生产端到Broker端Brok…

nc开发刚导入项目eclipse出现莫名其妙的错误,红叉,感叹号,文件missing

解决类出现红叉 解决感叹号,文件missing 其他问题 右上角的视图,要选择java,如果是javaEE也会有一些文件没有展示出来。

2024全国水科技大会暨土壤和地下水污染防治与修复技术创新论坛(七)

论坛召集人:李 辉 上海大学环境与化学工程学院教授 一、会议背景 十四五”时期,我国生态文明建设进入以减污降碳协同增效为重点战略方向,促进经济社会发展全面绿色转型,实现生态环境质量改善由量变到质变的关键时期。聚焦土壤与地…

挑战杯 基于机器学习与大数据的糖尿病预测

文章目录 1 前言1 课题背景2 数据导入处理3 数据可视化分析4 特征选择4.1 通过相关性进行筛选4.2 多重共线性4.3 RFE(递归特征消除法)4.4 正则化 5 机器学习模型建立与评价5.1 评价方式的选择5.2 模型的建立与评价5.3 模型参数调优5.4 将调参过后的模型重…

三、OpenAI之Function Calling实战

黑8决心将对 OpenAI API 的学习应用到更多实际场景中,以展示新时代技术的巨大潜力。在接下来的日子里,他不断探索和尝试,将 API 中的各种功能融入到不同的生活场景中,取得了一系列令人瞩目的成果。 首先,他将 OpenAI …

Chrome插件(二)—Hello World!

本小节将指导你从头到尾创建一个基本的Chrome插件,你可以认为是chrome插件开发的“hello world”! 以下详细描述了各个步骤: 第一步:设置开发环境 确保你拥有以下工具: 文本编辑器:如Visual Studio Cod…

Django学习记录04——靓号管理整合

1.靓号表 1.1 表结构 1.2 靓号表的构造 class PrettyNum(models.Model): 靓号表 mobile models.CharField(verbose_name"手机号", max_length11)# default 默认值# null true,blank true 允许为空price models.IntegerField(verbose_name"价…

EasyRecovery易恢复软件数据恢复方面表现优势有哪些?

EasyRecovery易恢复软件在数据恢复方面表现优异。它支持多种设备的数据恢复,如硬盘、光盘、U盘/移动硬盘、数码相机等,并且能够恢复包括文档、图片、视频、音频等各种类型的文件。无论是误删除、格式化、分区丢失还是硬件故障导致的数据丢失,…

mysql 运行参数优化

mysql 运行参数优化 InnoDB设置 1.innodb_buffer_pool_size —— 默认值为 128M. 这是最主要的优化选项,因为它指定 InnoDB 使用多少内存来加载数据和索引(dataindexes). 针对专用MySQL服务器,建议指定为物理内存的 50-80%这个范围. 例如,拥有64GB物理内存的机器,缓存池应该设…

设计模式学习笔记 - 面向对象 - 3.面向对象比面向过程有哪些优势?面向过程真的过时了吗?

简述 在过往的工作中,我发现很多人搞不清面向对象和面向过程的区别,总认为使用面向对象编程语言来开发,就是在面向面向对象编程了。而实际上,他们只是在用面向对象编程语言,编写面向过程风格的代码而已,并…

目标跟踪之KCF详解

High-Speed Tracking with Kernelized Correlation Filters 使用内核化相关滤波器进行高速跟踪 大多数现代跟踪器的核心组件是判别分类器,其任务是区分目标和周围环境。为了应对自然图像变化,此分类器通常使用平移和缩放的样本补丁进行训练。此类样本集…

目标检测新SOTA:YOLOv9 问世,新架构让传统卷积重焕生机

在目标检测领域,YOLOv9 实现了一代更比一代强,利用新架构和方法让传统卷积在参数利用率方面胜过了深度卷积。 继 2023 年 1 月 YOLOv8 正式发布一年多以后,YOLOv9 终于来了! 我们知道,YOLO 是一种基于图像全局信息进行…

YoloV8改进策略:主干网络改进|MogaNet——高效的多阶门控聚合网络

文章目录 摘要1、简介2、相关工作2.1、视觉Transformers2.2、ViT时代的卷积网络3、从多阶博弈论交互的角度看表示瓶颈4、方法论4.1、MogaNet概述4.2、多阶门控聚合4.3、通过通道聚合进行多阶特征重新分配4.4、实现细节5、实验5.1、ImageNet分类5.2、密集预测任务5.3、消融实验和…

Linux信号详解

文章目录 一、Linux信号1. 信号的概念2. 信号的定义3. 系统定义的信号 二、信号产生的方式1.通过键盘产生2. 通过系统调用3. 软件条件4. 硬件异常 三、信号处理函数1. OS发送信号的实质2. 指令发送信号3. signal()4. sigaction() 四、信号屏蔽机制1. 信号处理方式2.信号集操作函…

更改QTabWidget的选项卡的位置

选项卡位置函数: QTabWidget::setTabPosition(QTabWidget::North); //默认为上面 上北下南 参数: QTabWidget::North //上面 QTabWidget::South); //下面 QTabWidget::West //左侧 QTabWidget::East)//右侧 选项卡外观函数: QTabWidget::setT…

【0267】pg内核初始化 process table(ProcGlobal、PROC_HDR、PGPROC)

1. 前言 在postmaster或standalone后端启动期间初始化全局进程表(global process table)。该过程由InitProcGlobal()完成,对于此函数: (1)还创建了支持所请求的后端数量所需的所有每个进程信号量。我们过去只在后端真正启动时才分配信号量,但这很糟糕,因为它会让Postg…

nodejs+vue+ElementUi废品废弃资源回收系统

系统主要是以后台管理员管理为主。管理员需要先登录系统然后才可以使用本系统,管理员可以对系统用户管理、用户信息管理、回收站点管理、站点分类管理、站点分类管理、留言板管理、系统管理进行添加、查询、修改、删除,以保障废弃资源回收系统系统的正常…

Qt_纯虚函数的信号和槽

简介 在C中,纯虚函数是一个在基类中声明但没有实现的虚函数。纯虚函数的声明以 “ 0” 结尾。纯虚函数的目的是为了提供一个接口,但是不提供实现。派生类必须实现纯虚函数,否则它也会成为一个抽象类。纯虚函数可以在基类中定义,也…

unity驱动3d模特跳舞 穿模问题 穿透

是的,这个问题在3D建模和动画领域通常被称为“穿模”(Clipping)或“穿透”(Penetration)。更具体 用unity驱动3d模特跳舞,手会穿过衣服 当使用Unity驱动3D模特跳舞时,手部穿过衣服的问题通常是…