简体   繁体   English

如何编写一个查询,该查询将在最大和最小日期内返回记录

[英]how to write a query that will return records within min and max date

I've a table that contains policynumber with effdte and expdte. 我有一个表,其中包含带有effdte和expdte的policynumber。 policy term is one year and has records for every year. 保单有效期为一年,每年都有记录。 i'm trying to find if any claim was reported outside the policy period. 我正在尝试查找是否在保单期内未报告任何索赔。

SELECT DISTINCT POLICY_NO,MIN(EFF_DATE) AS EFFDTE,MAX(EXP_DATE) AS EXPDTE 
FROM TABLE
GROUP BY POLICY_NO;

I'm just not sure how do i combine that with Claimnumber that has a loss date within/not within that eff and exp date. 我只是不确定如何将其与在失效日期和失效日期之内/不在失效日期之内的索赔号相结合。 Thanks 谢谢

Something like this? 像这样吗

SELECT c.*
FROM CLAIMS c
WHERE CLAIM_DATE < EFF_DATE OR CLAIM_DATE > EXP_DATE;

This returns all claims that are outside the eff/exp date for the policy. 这将返回保单生效/失效日期以外的所有索赔。 According to your comments, all the data should be in the same row. 根据您的评论,所有数据应位于同一行。

尝试这个

SELECT c1.* FROM CLAIMS c1 WHERE Lossdte < ( select min(EffDte) from claims c2 where c1.PolicyNum = c2.PolicyNum ) or Lossdte > ( select max(ExpDte) from claims c2 where c1.PolicyNum = c2.PolicyNum )

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM