按最近日期过滤查询结果

2023-12-14

这段代码:

SELECT  
    O896IA_VEMPPRSA.REG_NR & O896IA_VEMPPRSA.DIS_NR AS RRDD,  
    Mgmt_Lvl.MGMT_LVL,  
    Count(O896IA_VEMPPRSA.SYS_EMP_ID_NR) AS Total,  
    Sum(IIf(emp_rlc_ir="Y",1,0)) AS Relocate,  
    Sum(IIf(emp_int_asn_ir="Y",1,0)) AS International_Assignment,  
    Sum(IIf(emp_tvl_ir="y",1,0)) AS Travel,  
    Sum(IIf(emp_spc_asn_ir="y",1,0)) AS Special_Assignment,  
    Sum(IIf([emp_rlc_ir]="Y",1,0))/[Total] AS Relocate_Percent,  
    Sum(IIf([emp_int_asn_ir]="Y",1,0))/[Total] AS International_Assignment_Percent,  
    Sum(IIf([emp_tvl_ir]="y",1,0))/[Total] AS Travel_Percent,  
    Sum(IIf([emp_spc_asn_ir]="y",1,0))/[Total] AS Special_Assignment_Percent

FROM (O867IA_VPJOBCO INNER JOIN Mgmt_Lvl  
    ON O867IA_VPJOBCO.JOB_GRP_CD = Mgmt_Lvl.JOB_GRP_CD)  
INNER JOIN (O896IA_VEMPPRSA INNER JOIN O867IA_VCAREER  
    ON O896IA_VEMPPRSA.SYS_EMP_ID_NR = O867IA_VCAREER.SYS_EMP_ID_NR)  
    ON O867IA_VPJOBCO.JOB_CLS_CD = O896IA_VEMPPRSA.JOB_CLS_CD

WHERE (((O896IA_VEMPPRSA.EMP_EMT_STS_CD)<>"T"))

GROUP BY  
    O896IA_VEMPPRSA.REG_NR & O896IA_VEMPPRSA.DIS_NR, 
    Mgmt_Lvl.MGMT_LVL,  
    Mgmt_Lvl.Ranking

ORDER BY Mgmt_Lvl.Ranking DESC;

为我提供了员工的调查答案,问题是这项调查每年都会进行,我需要最近几年的答案。

我尝试对 REC_EFF_STT_DT 使用 MAX,但对于某些员工来说,他们的答案每年都会发生变化,因此由于分组依据(我需要),它仍然返回多年的答案。

有没有一种解决方案可以让我提取最新的数据?如果员工在 2008 年、2009 年和 2010 年参加了调查,但不是在 2011 年、2012 年或 2013 年参加了调查,那么我仍然想要 2010 年的数据,他们参加的最新调查是哪一项,则不一定是 2013 年我需要。


假设您有一个名为 [Survey] 的表,其中包含以下数据

RespondentID    SurveyDate  Answer1                         Answer2
------------    ----------  ----------------------------    ----------------------------
1               2013-01-01  answer 1, respondent 1, 2013    answer 2, respondent 1, 2013
1               2012-01-01  answer 1, respondent 1, 2012    answer 2, respondent 1, 2012
2               2012-01-01  answer 1, respondent 2, 2012    answer 2, respondent 2, 2012

您可以使用以下形式的查询...

SELECT Survey.*
FROM
    Survey
    INNER JOIN
    (
        SELECT RespondentID, MAX(SurveyDate) AS MaxOfSurveyDate
        FROM Survey
        GROUP BY RespondentID
    ) AS MaxDate
        ON Survey.RespondentID = MaxDate.RespondentID
            AND Survey.SurveyDate = MaxDate.MaxOfSurveyDate

...返回每个受访者的最新行,在本例中为:

RespondentID    SurveyDate  Answer1                         Answer2
------------    ----------  ----------------------------    ----------------------------
1               2013-01-01  answer 1, respondent 1, 2013    answer 2, respondent 1, 2013
2               2012-01-01  answer 1, respondent 2, 2012    answer 2, respondent 2, 2012
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按最近日期过滤查询结果 的相关文章

  • postgresql:插入...(选择*...)

    我不确定它是否是标准 SQL INSERT INTO tblA SELECT id time FROM tblB WHERE time gt 1000 我正在寻找的是 如果 tblA 和 tblB 位于不同的数据库服务器中怎么办 Postg
  • 3 个表的 SQL 查询(或联接)

    第一次在 Stack Overflow 上问问题 很棒的资源 但是只有一件事真正让我作为 SQL 新手感到困惑 我有三个表 我想获取与鲍勃的学生相关的所有导师的姓名 表 1 教师 ID Name 1 Bob 表 2 学生 STUDENT I
  • 获取在任何日期创建的表的列表?

    我遇到了这样的情况 我想查找我在 2012 年 9 月 14 日 2012 年 9 月 14 日 在 sql server 上创建的表 是否有任何查询会列出在此日期创建的这些表 SELECT FROM sys tables WHERE cr
  • 时间序列数据的自连接

    我需要一些帮助来完成我认为应该是相当简单的自连接查询 只需要将两条记录中匹配的开始时间和结束时间合并为一条记录 假设我的表中有以下内容 Time Event 08 00 Start 09 00 Stop 10 30 Start 10 45
  • 使用来自另一个数据库的选择查询更新 mysql 表

    我有两个数据库 我想用另一个数据库表中的值更新一个表 我正在使用以下查询 但它不起作用 UPDATE database1 table1 SET field2 database2 table1 field2 WHERE database1 t
  • WHERE NOT EXIST 附近的语法错误

    我在堆栈中搜索 但没有一个达到最终答案 我的查询是这样的 INSERT INTO user username frequence autoSend VALUES feri2 3 1 WHERE NOT EXISTS SELECT FROM
  • ALTER TABLE 语句与 FOREIGN KEY 约束冲突

    为什么要添加外键tblDomare表导致此错误 ALTER TABLE 语句与 FOREIGN KEY 约束 FK tblDomare PersN 5F7E2DAC 冲突 冲突发生在数据库 almu0004 表 dbo tblBana 列
  • 使用自定义功能区时是否可以阻止 MS Access 自动更改选定的功能区选项卡?

    当使用自定义 UI XML 文件在 Access 中添加多个自定义功能区选项卡时 每当关闭窗体时 选定的功能区选项卡都会变回第一个自定义选项卡 我们从 VBA 以编程方式加载自定义功能区 我已经创建了重现问题的 accdb http sdr
  • SQL Server 查询中 UNION ALL 与 OR 条件

    我必须根据表上不存在的条件选择一些行 如果我使用如下的 union all 它会在不到 1 秒的时间内执行 SELECT 1 FROM dummyTable WHERE NOT EXISTS SELECT 1 FROM TABLE t WH
  • Ruby ActiveRecord 和 sql 元组支持

    ActiveRecord 是否支持 where 子句中的元组 假设底层数据库支持 结果 where 子句看起来像这样 where name address in John 123 Main St I tried Person where n
  • 无法与重定向器建立连接。确保“sql browser”服务正在运行

    所以我尝试这个 sql server 2012 由于这个错误我无法打开任何 ssis 包 无法与重定向器建立连接 确保 sql browser 服务正在运行 我的 Sql 浏览器肯定正在运行 我尝试在本地服务 本地系统和网络下更改它 仍然没
  • 更改表添加列并在同一条件 IF 语句中更新新列

    我正在尝试添加列并在同一 if 语句中更新它 BEGIN TRAN IF NOT EXISTS SELECT 1 FROM sys columns WHERE Name N Code AND Object ID Object ID N Te
  • SQL Server 中离线索引重建和在线索引重建有什么区别?

    重建索引时 有一个选项ONLINE OFF and ONLINE ON 我知道当ONLINE模式打开时 它会复制索引 切换新查询以利用它 然后重建原始索引 使用版本控制跟踪两者的更改 如果我错了 请纠正我 但是 SQL 在离线模式下会做什么
  • 使用用户定义函数 MySql 时出错

    您好 请帮我解决这个问题 提前致谢 我在数据库中定义了这些函数 CREATE FUNCTION levenshtein s1 VARCHAR 255 s2 VARCHAR 255 RETURNS INT DETERMINISTIC BEGI
  • mysql 不带空字符串和 NULL 的不同值

    如何检索没有空字符串值和NULL值的mysql不同值 SELECT DISTINCT CON EMAILADDRESS AS E MAIL FROM STUDENT INNER JOIN CONTACT CON ON STUDENT CON
  • 消息 203,级别 16,状态 2,不是有效标识符

    我收到以下错误 消息 203 级别 16 状态 2 过程 getQuestion 第 18 行名称 select top 1 from tlb Question inner join tlb options on tlb options q
  • hive - 在值范围之间将一行拆分为多行

    我在下面有一张表 想按从开始列到结束列的范围拆分行 即 id 和 value 应该对开始和结束之间的每个值重复 包括两者 id value start end 1 5 1 4 2 8 5 9 所需输出 id value current
  • 在 Yii 的标准中如何获得计数 (*)

    我正在尝试构建一个具有以下内容的查询group by属性 我正在尝试得到id和count它一直告诉我count is invalid列名 我怎样才能得到count来自group by询问 工作有别名 伊伊 1 1 11 其他不及格 crit
  • Oracle SQL PLS-00049:错误的绑定变量

    我收到此错误 这似乎是列拼写问题 然而 我 99 确信我拼写的所有内容都是正确的 但我看不出有任何理由会出现我所犯的错误 这是来源 CREATE OR REPLACE TRIGGER update qoh trigger AFTER INS
  • Access之后我们要做什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐

  • 使用 pyodbc 从 WSL2 连接到 Windows 上的 SQL Server - 连接超时

    我正在尝试从 WSL2 连接到 Windows 上的 SQL 服务器 但收到连接超时错误 我正在使用这段代码 import pyodbc server DESKTOP LFOSSEF database sportsanalytics use
  • 如何因不活动而注销用户

    纯服务器端 PHP 每次用户提交表单时 我都会更新数据库中的 上次活动 时间 我想进行定期检查并强制注销非活动用户以释放许可证 我该怎么做呢 我是否还应该将会话 ID 存储在数据库中 然后销毁会话 这将为另一个用户释放许可证 当第一个用户最
  • 对齐捕获的深度和 RGB 图像

    之前有过提问 here here and here 与我的问题相关 但是我的问题有一个不同的方面 我在之前提出的任何问题中都没有看到过 我使用 Kinect 深度传感器获取了用于研究的数据集 该数据集采用 png 图像格式 用于特定时刻的深
  • Swagger-ui 与 Spring 安全性

    我有一个带有身份验证服务的简单 REST 应用程序 我尝试向其中添加 swagger 和 swagger ui 但我只能看到我的端点 v2 api docs In swagger ui html我只看到端点组 但无法扩展任何列表 在 chr
  • 本地化 (l10n):为我的 mozilla 插件设置默认语言

    我正在开发一个 Mozilla 插件并实现 l10n 我的问题是 如何为我的插件设置默认语言 当我的插件不支持语言时 它会切换到默认语言 当 Mozilla Firefox 的语言改变时 插件会改变它的语言环境吗 如何更改我的 Firefo
  • 图像周围的 Silverlight 文本

    我正在尝试将文本包裹在图像周围 就像使用 html float 属性一样 有没有办法在 silverlight 3 中实现这一点 Thanks 我不久前解决了这个问题 据我所知 确实没有什么好方法 这会起作用 尽管只是很痛苦 为了简化解释
  • 如何配置 PyCharm 在没有 ^space 的情况下自动完成代码?

    When typing in PyCharm I used to automatically get code completion suggestions without having to hit Ctrl Space I must h
  • 没有提升的 WCF wsdualhttpbinding 客户端

    我创建了一个 Windows 服务 服务器 和一个使用 WCF wsdualhttpbinding 回调功能的 WPF 客户端 两个软件之间的所有内容都可以正常工作 但我遇到的问题是客户端需要以管理员权限运行才能工作 这是可以理解的 因为它
  • 适用于 VB6 和 .net 应用程序的最佳 IPC

    在我们的应用程序 文档管理系统 中 我们应该收到屏幕更改的通知 或通知其他程序屏幕更改 以便使两个应用程序查看相同的数据 一个是订单履行应用程序 另一个是订单履行应用程序原始传真的文档查看器 履行应用程序是用 vb6 编写的 文档管理器是用
  • SQL Server 文件名和版本[关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我很幸运能够成为一台服务器的管理员 但我不知道这台服务器上有多少个版本的sql server 当我打开Microsoft SQL Server文件时 有一些名为80 90 100 1
  • 线性渐变在 IE 11 中不起作用

    我有一个 css 规则 可以在 chrome firefox 中正常工作 并且曾经在 IE 中工作 现在我看似有效的 css 不起作用了 s tour border radius 5px margin 0 auto width 250px
  • Java HttpClient - 通过代理发布文件

    我尝试使用代理从我的网络应用程序调用外部网站 此外 还需要在此外部网站上执行 POST 请求 我正在使用 tomcat7 org apache httpcomponents 4 3 4 spring 在没有代理的情况下进行跟踪是有效的 我得
  • dropwizard 应用程序中的配置更改以与 React browserHistory 配合使用

    我有一个react应用程序运行在dropwizard服务器 这bundle js在 ui 上提供 当我打开 ui 上的 url 并导航应用程序 并转到 ui content 时 它工作正常 但是当我尝试刷新特定页面 例如 app conte
  • 在 ssrs 中显示 10 行的最大值

    我有一份报告 其中我想显示 10 名具有最高薪水的员工数据 我想通过 SSRS 来完成此操作 请帮助我 请通过 SSRS 而不是 SSMS 来完成 提前致谢 我假设您有一个数据集 每个员工一行 按工资降序排序 您可以申请一个TOP N过滤到
  • 如何在 Swift 中使用 CTFontCopyCharacterSet() 获取字体的所有字符?

    如何获取字体的所有字符CTFontCopyCharacterSet 在斯威夫特 对于 macOS 在实施该方法时出现了该问题OSX CGGlyph 到 UniChar用斯威夫特回答 func createUnicodeFontMap Get
  • 禁用的文本框丢失视图状态

    我根据所选的下拉菜单动态生成表单 该表格由字段组成 十进制值的数据输入 几个文本字段 必须在末尾添加所有小数值并用该值更新 Total TextBox 总计文本框被禁用 当用户输入值后单击表单上的 保存 按钮时 除了禁用的文本框之外 整个表
  • Python - Pandas:选择每组的第一个观察结果

    我想使用以下命令将我以前的 SAS 代码改编为 Pythondataframe框架 在 SAS 中 我经常使用这种类型的代码 假设列按 group id 排序 其中 group id 取值 1 到 10 其中每个 group id 有多个观
  • 有没有办法使用 Excel 以编程方式使用动态数据定义表区域?

    我有一张包含表格的工作表 由 jasper 报告查询生成 该表将成为我的数据透视表的来源 数据透视表是使用外部连接 来自 Microsoft Query 创建的 由于需要先定义源表 然后才能在 Micrososft Query 中使用它 所
  • 打开和关闭 mysqli 查询的正确方法

    我有一个简单但令人困惑的问题 特别是对于像我这样自学程序员的人 我已经阅读了 PHP NET 和 MYSQL COM 中的不同文档 它们都解释了如何打开和如何关闭它 但对于这个问题并没有真正的帮助 至少对我来说 我学习的方式如下我需要一个文
  • 按最近日期过滤查询结果

    这段代码 SELECT O896IA VEMPPRSA REG NR O896IA VEMPPRSA DIS NR AS RRDD Mgmt Lvl MGMT LVL Count O896IA VEMPPRSA SYS EMP ID NR