sql server 自动核算
USE tempdb;
CREATE TABLE #temptable
(
[姓名] NVARCHAR(255),
[加班日期] DATE,
[加班时长] DECIMAL(8, 2)
);
INSERT INTO #temptable
(
[姓名],
[加班日期],
[加班时长]
)
VALUES
(N'张三', N'2021-10-09', 1),
(N'张三', N'2021-10-08', 2),
(N'张三', N'2021-10-07', 3),
(N'张三', N'2021-10-06', 2); --定义参数
DECLARE @v DECIMAL(8, 2);
SET @v = 2.2; WITH cte_base
AS (SELECT *,
ROW_NUMBER() OVER (PARTITION BY 姓名 ORDER BY 加班日期 DESC) n
FROM #temptable),
cte
AS (SELECT cte_base.n,
cte_base.姓名,
cte_base.加班日期,
cte_base.加班时长,
CAST(加班时长 AS DECIMAL(8, 2)) AS sum_,
'√' AS flag
FROM cte_base
WHERE n = 1
UNION ALL
SELECT cte_base.n,
cte_base.姓名,
cte_base.加班日期,
cte_base.加班时长,
CAST((cte.sum_ + cte_base.加班时长) AS DECIMAL(8, 2)) AS sum_,
CASE
WHEN (cte.sum_ < @v) THEN
'√'
END AS flag
FROM cte
JOIN cte_base
ON cte.n + 1 = cte_base.n)
SELECT *
FROM cte;
sql server 自动核算的更多相关文章
- 【SQL】用Sql Server自动生产html格式的数据字典
原文:[SQL]用Sql Server自动生产html格式的数据字典 本文软件环境:Sql Server 2008. 1.打开sql server管理器,给选定的表添加描述信息,给指定的字段添加描述信 ...
- 【Transact-SQL】SQL Server自动把left join自动转化为inner join、以及关联时的数据重复问题
原文:[Transact-SQL]SQL Server自动把left join自动转化为inner join.以及关联时的数据重复问题 1.SQL Server自动把left join自动转化为inn ...
- SQL Server 自动增长过大
一.背景 我们遇到的问题如下图所示:自动增长无端端就按照这样的比例进行增长: (Figure1:问题所在) 尝试使用SSMS修改自动增长值,就会出现下面的错误: (Figure2:错误信息) 遇到上面 ...
- Sql Server自动备份数据库,定期删除备份
//实现:每天自动备份数据库,定期删除备份 //步骤:[开始]--[所有程序]--[Microsoft SQL Server 2005]--[SQL Server Management Studio] ...
- SQL SERVER 自动生成 MySQL 表结构及索引 的建表SQL
SQL SERVER的表结构及索引转换为MySQL的表结构及索引,其实在很多第三方工具中有提供,比如navicat.sqlyog等,但是,在处理某些数据类型.默认值及索引转换的时候,总有些 ...
- SQL Server 自动循环归档分区数据脚本
标签:SQL SERVER/MSSQL SERVER/数据库/DBA/表分区 概述 在很多业务场景下我们需要对一些记录量比较大的表进行分区,同时为了保证性能需要将一些旧的数据进行归档.在分区表很多的情 ...
- SQL Server自动备份 备份到本地或者远程服务器
0.1 在SQLServer2008 --> 备份数据库 --> 安全 --> 新建用户 --> 用户名 选择该windows用户 (确保 --> 机器名/人名 --&g ...
- SQL Server 自动重建出现碎片的索引
1.索引碎片的产生? 由于在表里大量的插入.修改.删除操作而使索引页分裂.如果索引有了高的碎片,有两种情况,一种情况是扫描索引需要花费很多的时间,另一种情况是在查询的时候索引根本不使用索引,都会导致性 ...
- SQL Server ->> 自动创建表并从文件加载数据
这个存储过程自动创建表并从文件加载数据. 有一点需要说明的是Excel 12.0驱动是兼容了Excel 97-2003和Excel 2007两者格式的Excel文件. CREATE PROCEDURE ...
- Entity Framewrok 7beta7中不同版本sql server自动生成分页sql语句的问题
在EF中,使用linq进行分页是很方便的,假如我们有一个EMP表,结构如下: public class Emp { [Key] public Guid No { get; set; } public ...
随机推荐
- https原理(四)双向实践(java客户端+tcp代理)
本文采用客户端与服务端共用一个密钥对 1 将https代理服务器(三)实践中的mkcert p12分解为一个公钥一个私钥 mac@macdeMacBook mkcert % openssl pkcs1 ...
- nop4.3 用户权限管理
权限管理涉及到5张表: //用户表 select * from Customer //角色表select * from CustomerRole //用户和角色对应关系select * from Cu ...
- docker镜像原理(一)
在理解什么是docker镜像之前我们需要搞懂虚拟机系统到底是怎么组成的如何实现的,docker中又是如何安装和使用虚拟机系统的,怎样可以高效灵活的切换系统发行版等问题 一.centos7系统长什么样 ...
- redis常用命令之string&list
redis常用操做 string key操作 string <key:value> set name johnget name list setnx <key value>se ...
- Python3 文件处理相关脚本
对文件相关处理是脚本中最常见的,下面列举几种实用的案例: 批量删除: (1)删除指定目录,指定后缀文件 例:删除目录J:/start下的 .log与.tmp结尾文件 def del_files(pat ...
- VC 运行时库的引用区别 /MD、/MDd 和 /MT、/MTd和DllMain函数
/MT和/MTd表示采用多线程CRT库的静态lib版本.该选项会在编译时将运行时库以静态lib的形式完全嵌入.该选项生成的可执行文件运行时不需要运行时库dll的参加,会获得轻微的性能提升,但最终生成的 ...
- vite2.9 + vue3.2 打包部署到nginx上刷新页面404问题
vite2.9 + vue3.2 打包部署到nginx上刷新页面404问题 在本地运行没问题,部署到服务器上,能正常访问,但是刷新之后页面404 原有的Nginx配置为: server { liste ...
- PC端 图片宽度是百分比,动态设置图片高度为 6:9
我们知道图片宽度可以设置 百分比,但是高度要给一个固定值 不然不生效,并且产品要求图片显示必须是9:6,这开始确实难倒我了 后面想了一下用js 获取图片宽度 动态的计算高度就行了,超简单 se ...
- BFS板子题
#include <iostream> #include <string> #include <queue> using namespace std; int n, ...
- 2022-04-20内部群每日三题-清辉PMP
1.一个项目已经支出350万美元,现在已经完成400万元美元的工作.该项目的计划价值(PV)为800万美元.主题专家(SME)估算还需要600万美元来完成该项目.完成该项目的技术方法不再有效.当前的完 ...