찾다
데이터 베이스MySQL 튜토리얼员工薪资历史-Union实现
员工薪资历史-Union实现Jun 07, 2016 pm 03:59 PM
역사직원성취하다샐러리

( 2010-8-27 记录)员工薪资历史 -Union 实现: 1、 表结构 Salary ( id , empID , jbxz,yfxz,sfxz,jse , pid ) Perion(id,bm,year,month,sdate,edate) 表结构大体是这样的,其中 bm 是薪资日期编码如 2010-8 ,但是不一定也可以是 108 ,无规则可言。

( 2010-8-27 记录)员工薪资历史 -Union 实现:


\

1、 表结构

Salary ( id , empID , jbxz,yfxz,sfxz,jse , pid )

Perion(id,bm,year,month,sdate,edate…)

表结构大体是这样的,其中 bm 是薪资日期编码如 2010-8 ,但是不一定也可以是 108 ,无规则可言。 Year 是薪资年, month 是薪资月, sdate 和 edate 是开始和结束日期。

2. 本来打算用交叉表实现的,原本已经用交叉表实现了,不过最后未能用交叉表实现“ xxxx 小计”,只能实现的显示“小计”,最后改用union 方式实现。

3. 实现要点:

注意 group by 中的字段及顺序,注意 order by 中的字段及顺序

4 .代码如下:

/**
    统计员工的期间薪资
*/

IF EXISTS (select * from sysobjects where id = object_id('sp_count_salary') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
  DROP PROCEDURE sp_count_salary
GO

CREATE PROCEDURE sp_count_salary 
  @P_EMP_ID INT,         --员工id
  @P_SPLA_PER_ID INT,    --开始期间id
  @P_EPLA_PER_ID INT     --结束期间id
WITH encryption   
AS
BEGIN 
  BEGIN TRANSACTION T1

   DECLARE @V_S_YEAR INT            --开始期间年份
   DECLARE @V_S_MONTH INT           --开始期间月份
   DECLARE @V_E_YEAR INT            --结束期间年份
   DECLARE @V_E_MONTH INT           --结束期间月份
   
   select @V_S_YEAR=pla_per_year,@V_S_MONTH=pla_per_month from pla_period where pla_per_id=@P_SPLA_PER_ID
   select @V_E_YEAR=pla_per_year,@V_E_MONTH=pla_per_month from pla_period where pla_per_id=@P_EPLA_PER_ID 
   
   select (CAST(pla_per_year AS NVARCHAR(4)) + '-' + RIGHT('0' + CAST(pla_per_month AS NVARCHAR(2)), 2)) as '时间', sum(pay_res_btax) N'基本薪资',sum(pay_res_atax) N'应发薪资',sum(pay_res_result) N'实发薪资',sum(pay_res_tax) N'缴税额'
     from pla_period pp,pay_res pr
    where pp.pla_per_id = pr.pay_res_perid
      and pay_res_empid = @P_EMP_ID
      and (pla_per_year > @V_S_YEAR or (pla_per_year = @V_S_YEAR and pla_per_month >= @V_S_MONTH))
      and (pla_per_year < @V_E_YEAR or (pla_per_year = @V_E_YEAR and pla_per_month <= @V_E_MONTH))
 group by pla_per_year,pla_per_month
 union
 (
   select cast(pla_per_year as varchar(10))+N&#39;小计&#39; as &#39;时间&#39;, sum(pay_res_btax) N&#39;基本薪资&#39;,sum(pay_res_atax) N&#39;应发薪资&#39;,sum(pay_res_result) N&#39;实发薪资&#39;,sum(pay_res_tax) N&#39;缴税额&#39;
     from pla_period pp,pay_res pr
    where pp.pla_per_id = pr.pay_res_perid
      and pay_res_empid = @P_EMP_ID
      and (pla_per_year > @V_S_YEAR or (pla_per_year = @V_S_YEAR and pla_per_month >= @V_S_MONTH))
      and (pla_per_year < @V_E_YEAR or (pla_per_year = @V_E_YEAR and pla_per_month <= @V_E_MONTH))
 group by pla_per_year
 )
 union
 (
   select N&#39;合计&#39; as &#39;时间&#39;, sum(pay_res_btax) N&#39;基本薪资&#39;,sum(pay_res_atax) N&#39;应发薪资&#39;,sum(pay_res_result) N&#39;实发薪资&#39;,sum(pay_res_tax) N&#39;缴税额&#39;
     from pla_period pp,pay_res pr
    where pp.pla_per_id = pr.pay_res_perid
      and pay_res_empid = @P_EMP_ID
      and (pla_per_year > @V_S_YEAR or (pla_per_year = @V_S_YEAR and pla_per_month >= @V_S_MONTH))
      and (pla_per_year < @V_E_YEAR or (pla_per_year = @V_E_YEAR and pla_per_month <= @V_E_MONTH))
 )
 order by (CAST(pla_per_year AS NVARCHAR(4)) + &#39;-&#39; + RIGHT(&#39;0&#39; + CAST(pla_per_month AS NVARCHAR(2)), 2))

     
 IF @@ERROR > 0 
 BEGIN
   ROLLBACK TRANSACTION T1
 END 
 ELSE
 BEGIN
   COMMIT TRANSACTION T1
 END
END

GO

--EXEC sp_count_salary 4901,1131,1153
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
鸣潮沉没的历史5个灯塔位置介绍鸣潮沉没的历史5个灯塔位置介绍Mar 07, 2024 pm 03:58 PM

您是否正在寻找《鸣潮沉没的历史》任务中的五个灯塔?本篇攻略将为您详尽解读这些待发现的灯塔所在之地。我们期望这能助您快速找到所需灯塔,顺利完成任务!鸣潮沉没的历史5个灯塔位置介绍具体位置一览:1、第一座灯塔:请您前往荒石高地,位于北落野正上方处。2、第二座灯塔:接下来请您赴中曲台地,在东北侧传送点周围便可寻见。3、第三座灯塔:请到虎口山脉东南方位,沿着无明湾即可找到。4、第四座灯塔:请您前往怨鸟泽东南方路端传送点,接近山崖之处。5、第五座灯塔:请至无光之森第一无音区,悬崖边缘即为所寻。

如何查看和管理 Linux 命令历史记录如何查看和管理 Linux 命令历史记录Aug 01, 2023 pm 09:17 PM

如何在Linux中查看命令历史记录在Linux中,我们使用history命令来查看所有以前执行的命令的列表。它有一个非常简单的语法:history与历史记录命令配对的一些选项包括:选项描述-c清除当前会话的命令历史记录-w将命令历史记录写入文件-r从历史记录文件重新加载命令历史记录-n限制最近命令的输出数量只需运行history命令即可在Linux终端中查看所有以前执行的命令的列表:除了查看命令历史记录之外,您还可以管理命令历史记录并执行修改先前执行的命令、反向搜索命令历史记录甚至完全删除历史记

Go语言的历史发展及重要里程碑Go语言的历史发展及重要里程碑Apr 04, 2024 am 08:12 AM

Go语言由谷歌开发,最初于2007年构思,2012年发布1.0版本。其关键里程碑包括:2012年:发布Go1.0,引入并发性、内存安全和垃圾回收。2020年:Go2发布,引入模块化、协程改进和对泛型和错误处理的支持。2022年:Go1.19发布,提供性能优化和对泛型类型和一起函数的支持。

任天堂新员工留存率达 98.8%,去年平均年薪 988 万日元任天堂新员工留存率达 98.8%,去年平均年薪 988 万日元Sep 14, 2023 am 08:49 AM

本站9月2日消息,任天堂官网披露员工数据,新员工留存率(2019年4月入职并于2022年4月继续在公司工作的应届毕业生比例)高达98.8%,其中男性100%、女性96%。这意味着任天堂每聘用100名新员工,约有一人决定辞职,而日本平均新员工留存率为70%。冈本启武,UZUZ株式会社的首席执行官,表示:“大公司通常提供高薪和良好福利,因此员工留存率较高,尤其是任天堂作为日本受欢迎的代表公司。”“去年,任天堂的平均年薪为988万日元(约合49.2万元人民币),虽然游戏行业中有一些公司的年薪比任天堂更

快手历史亲密关系怎么看快手历史亲密关系怎么看Apr 01, 2024 pm 04:51 PM

快手历史亲密关系允许用户将自己与特定好友之间的亲密程度标注在用户资料页上,从而展示出彼此之间的亲密关系,但是历史上的关系怎么看呢?如果你想知道的话,小编今天分享的教程你可以学习下吧。快手历史亲密关系查看方法第一步、打开快手个人主页,点击上方【亲密关系】图标。第二步、进入我的亲密朋友界面,点击亲密好友右侧【亲密值】图标。第三步、进入亲密值详情页,找到【亲密印记】卡片,即可查看建立亲密关系时间。

AI抢饭碗成真!近500家美国企业用ChatGPT取代员工,有公司省下超10万美元AI抢饭碗成真!近500家美国企业用ChatGPT取代员工,有公司省下超10万美元Apr 07, 2023 pm 02:57 PM

自从ChatGPT掀起浪潮,不少人都在担心AI快要抢人类饭碗了。然鹅,现实可能更残酷QAQ......据就业服务平台Resume Builder调查统计,在1000多家受访美国企业中,用ChatGPT取代部分员工的,比例已达到惊人的48%。在这些企业中,有49%已经启用ChatGPT,还有30%正在赶来的路上。就连央视财经也为此专门发过一个报道:相关话题还曾一度冲上了知乎热榜,众网友表示,不得不承认,现在ChatGPT等AIGC工具已势不可挡——浪潮既来,不进则退。有程序员还指出:用过Copil

C语言的起源和发展历史C语言的起源和发展历史Mar 18, 2024 pm 06:48 PM

标题:C语言的起源和发展历史C语言是一种广泛应用于系统软件和应用软件开发的高级编程语言。它具有结构化、模块化和可移植性等特点,是计算机领域中最为重要和流行的编程语言之一。本文将介绍C语言的起源和发展历史,并结合具体的代码示例进行说明。一、C语言的起源C语言的历史可以追溯到1969年,当时贝尔实验室的DennisRitchie和KenThompson为了开

凤凰新闻如何查看历史   查看历史记录的方法凤凰新闻如何查看历史 查看历史记录的方法Mar 12, 2024 pm 07:16 PM

  我们大家在这款凤凰新闻APP当中,都是会有机会让大家了解到各种各样的一些新闻资讯,这里的信息资源超多,各种各样的一些热点事件,都能够全部的掌握到,所以大家即时不出门,一样的都能够知晓天下大小事,绝对都是不会落后,很多的一些时候,都能够发现这里的新闻版块超多,各种的一些信息版块,随由大家自由的点击查看,当然大家有自己喜欢的一些版块领域,都能关注订阅一番,可以每一次都推荐出相关的一些资讯,非常的符合你们的需求,看的非常的满意,平常大家所看的这一些资讯,都能保存下来,大家可以随时的查看到自己的这一

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경