1. SELECT RECORD.[RECORD_ID]
  2. ,RECORD.[WORKFLOW_INFO_ID]
  3. ,RECORD.[FORM_CODE]
  4. ,RECORD.[APPLY_DATE]
  5. ,RECORD.[APPLY_EMP_ID]
  6. ,RECORD.[APPLY_EMP_NUMBER]
  7. ,RECORD.[APPLY_EMP_NAME_EN]
  8. ,RECORD.[APPLY_EMP_NAME_CN]
  9. ,RECORD.[APPLY_EMP_EMAIL]
  10. ,RECORD.[APPLY_EMP_PHONE]
  11. ,RECORD.[APPLY_EMP_MOBILE]
  12. ,RECORD.[APPLY_EMP_POSITION_CN]
  13. ,RECORD.[APPLY_EMP_POSITION_EN]
  14. ,RECORD.[APPLY_EMP_WORK_OFFICE]
  15. ,RECORD.[APPLY_EMP_WORK_AREA_CODE]
  16. ,RECORD.[APPLY_EMP_DEPT_CODE]
  17. ,RECORD.[APPLY_EMP_DEPT_TYPE]
  18. ,RECORD.[APPLY_EMP_DEPT_IS_FUNCTIONAL]
  19. ,RECORD.[APPLY_EMP_DEPT_NAME_CN]
  20. ,RECORD.[APPLY_EMP_DEPT_NAME_EN]
  21. ,RECORD.[APPLY_EMP_DEPT_FUNC_CODE]
  22. ,RECORD.[APPLY_EMP_DEPT_FUNC_CN]
  23. ,RECORD.[APPLY_EMP_DEPT_FUNC_EN]
  24. ,RECORD.[FILLER_EMP_ID]
  25. ,RECORD.[FILLER_EMP_NUMBER]
  26. ,RECORD.[FILLER_EMP_NAME_EN]
  27. ,RECORD.[FILLER_EMP_NAME_CN]
  28. ,RECORD.[FILLER_EMP_EMAIL]
  29. ,RECORD.[FILLER_EMP_PHONE]
  30. ,RECORD.[FILLER_EMP_MOBILE]
  31. ,RECORD.[FILLER_EMP_POSITION_CN]
  32. ,RECORD.[FILLER_EMP_POSITION_EN]
  33. ,RECORD.[FILLER_EMP_WORK_OFFICE]
  34. ,RECORD.[FILLER_EMP_WORK_AREA_CODE]
  35. ,RECORD.[FILLER_EMP_DEPT_CODE]
  36. ,RECORD.[FILLER_EMP_DEPT_TYPE]
  37. ,RECORD.[FILLER_EMP_DEPT_IS_FUNCTIONAL]
  38. ,RECORD.[FILLER_EMP_DEPT_NAME_CN]
  39. ,RECORD.[FILLER_EMP_DEPT_NAME_EN]
  40. ,RECORD.[FILLER_EMP_DEPT_FUNC_CN]
  41. ,RECORD.[FILLER_EMP_DEPT_FUNC_EN]
  42. ,RECORD.[FILLER_EMP_DEPT_FUNC_CODE]
  43. ,EMP.APPROVE_EMP_ID
  44. ,EMP.APPROVE_TYPE
  45. ,EMP.EMP_NAME_CN
  46. ,EMP.EMP_NAME_EN
  47. ,EMP.EMP_NUMBER
  48. ,EMP.SOURCE_EMP_NAME_CN
  49. ,EMP.SOURCE_EMP_NAME_EN
  50. ,EMP.SOURCE_EMP_NUMBER
  51. ,Activity.ACTIVITY_NAME --活动名称
  52. ,Activity.MEETING_CATEGORY_NAME
  53. ,Activity.MEETING_CATEGORY_CODE
  54. ,Activity.ACTIVITY_JOIN_NUMBER
  55. ,Activity.START_TIME
  56. ,Activity.FINISH_TIME
  57. ,Activity.FEE
  58. ,Activity.[ACTIVITY_REGION_NAME]
  59. ,CASE WHEN(EMP.WF_ACTIVITY_NAME IS NULL) THEN
  60. (CASE
  61. WHEN(RECORD.RECORD_STATUS=0) THEN 'Draft'
  62. WHEN(RECORD.RECORD_STATUS=2) THEN 'Completed'
  63. WHEN (RECORD.RECORD_STATUS=4) THEN 'Circulation'
  64. WHEN (RECORD.RECORD_STATUS=5) THEN 'Cancelled'
  65. WHEN (RECORD.RECORD_STATUS=7) THEN 'Suspend' ELSE 'Unknown' END)
  66. ELSE EMP.WF_ACTIVITY_NAME END AS CURRENT_ACTIVITY_NAME
  67. FROM [dbo].[TSTB_COM_MS_ITEM_RECORD] RECORD
  68. LEFT JOIN [dbo].FUN_MS_GetActivityInfo() Activity
  69. ON RECORD.RECORD_ID = Activity.RECORD_ID
  70. LEFT JOIN
  71. (SELECT * , ROW_NUMBER() OVER (PARTITION BY RECORD_ID ORDER BY CREATE_DATE ) AS RN FROM [dbo].[TSTB_COM_ITEM_RECORD_APPROVE_EMP] WHERE STATUS=1 AND APPROVE_TYPE<>2 AND WORKFLOW_PREFIX='MS')
  72. AS EMP ON RECORD.RECORD_ID=EMP.RECORD_ID AND EMP.RN=1
  73. WHERE RECORD.STATUS=1 and RECORD.RECORD_STATUS<>5

sqlserver 用 RowNumber 分组的更多相关文章

  1. sqlserver 存储过程 递归查询分组+hierarchyid重建会员关系

    CREATE PROCEDURE [dbo].[GetGroupInfo] @s_code NVARCHAR() = --会员卡号 AS BEGIN declare @p int; --查询唯一性结果 ...

  2. MySQL数据中分级分组显示数据

    前面已经有了SqlServer数据分级分组显示数据了.今天又来做一个MySQL数据库中的分级分组显示,SqlServer中用到了递归,这里为了简单就直接把根的数据显示为0 ,而不用递归了. 在MySQ ...

  3. 【.net core 入坑】.net core 3.0 报错:在 FETCH 语句中选项 NEXT 的用法无效

    目录 1.事故现场: 2.分析及解决方案: 1.事故现场: 在项目中使用.net core 3.0,在EF链接sqlserver2008,在程序中使用了分页用的skip和take,程序报错: 在 FE ...

  4. ROWNUMBER() OVER( PARTITION BY COL1 ORDER BY COL2)用法,先分组,然后在组内排名,分组计算,主表与附表一对多取唯一等

    ROWNUMBER() OVER( PARTITION BY COL1 ORDER BY COL2)用法 今天在使用多字段去重时,由于某些字段有多种可能性,只需根据部分字段进行去重,在网上看到了row ...

  5. SQLSERVER中按年月分组

    SQLSERVER中按年月分组 一个表有三个字段id,dt,d  分别存放id,时间,数值  id    dt    d 1 2004-08-11 12:12:00.000 9  2 2005-09- ...

  6. SQLServer 分组查询相邻两条记录的时间差

    原文:SQLServer 分组查询相邻两条记录的时间差 首先,我们通过数据库中表的两条记录来引出问题,如下图 以上为一个记录操作记录的表数据.OrderID为自增长列,后面依次为操作类型,操作时间,操 ...

  7. SqlServer 对分组的内容进行拼接-group_concat

    SqlServer  对分组的内容进行拼接: 方案1:xml 子集,性能较差 方案2:借助 sqlCLR 接入.实现group_concat.性能完美,但是 阿里云的不支持!!!! CREATE TA ...

  8. MYSQL-实现分组排序 对比 ORACLE 和SQLserver用 row_number() over(partition by ) 分组排序功能

    以下是个人笔记: 本文是为了理解 row_number() over(partition by )  和实现各种数据库的分组排序功能 select ROW_NUMBER()over( partitio ...

  9. SQLServer 行转列,统计,二次分组

    create table test (   bizdate datetime, --日期   classes varchar(50), --班次 '白班' 或 '夜班'   qty int --产量 ...

随机推荐

  1. Node.JS文件系统解析

    1.Node.js 文件系统 var fs = require("fs") 2.异步和同步 读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFile ...

  2. 关于jQuery里面的选择器

    一.JQuery选择器的概述 选择器是JQuery的根基,在JQuery中,对事件处理.遍历DOM和Ajax操作都依赖于选择器. 二.选择器的优势 1.简洁的语法 2.支持CSS1.0到CSS3.0选 ...

  3. php 相关模块备忘

    在安装php的时候,不管是编译安装: ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc -- ...

  4. 如何在Visual Studio中开发自己的代码生成器插件

     Visual Studio是美国微软公司开发的一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代码管控工具.集成开发环境(IDE)等等,且所写的目标代码适用于微 ...

  5. 乱码之MyEclipse控制台

    今天突然发现控制台出现乱码,查了资料解决方案不一. 我的解决方案如下: Run -> Debug Configuration... -> MyEclipse Servler -> M ...

  6. 在内网中OWA第一次访问速度慢的问题

      当网络环境为内网时,有时访问OWA站点一直卡在Office Web App 那里. 这是因为SharePoint有一个证书需要联网检索 此环境为SharePoint 2013 通过下面的三个步骤 ...

  7. Snort - 配置文件

    Snort.conf 版本 2.9.8.3 编译可用选项: --enable-gre --enable-mpls --enable-targetbased --enable-ppm --enable- ...

  8. Maltego实体分类与Transform

    分类 实体类型 描述 Devices (设备类) Device 表示一个设备,如一个手机或相机. Infrastructure (基础结构类) AS 一个互联网自治系统   DNS Name 域名系统 ...

  9. mysql innodb 奔溃问题

    ps -A | grep -i mysql kill 列出来的进程 service mysql start 我的问题就解决了 ------------------------------------- ...

  10. 拓展:使用终端创建、编译、链接OC…

    本文介绍一下如何使用Mac OS X自带终端快速创建.编译.链接OC程序. 1.打开终端 顺序:打开Finder——应用程序——实用工具——终端 2.打开需要存放 .m 文件的路径(比如我需要放到桌面 ...