I have a table that I need to pull all the records that have overlapping values in two fields (Min_LTV and Max_LTV) such as;
Lender Product Min_LTV Max_LTV
Lender1 Product1 70 80
Lender2 Product1 75 80
This is what I have so far but it is returning records that arn't overlapping.
[Code=sql]
SELECT a.ID, a.LENDER, a.ADJUSTMENT, a.MIN_FICO, a.MAX_FICO, a.MIN_LOAN, a.MAX_LOAN, a.MIN_LTV, a.MAX_LTV, a.PRICE_ADD, a.RATE_ADD, a.MARGIN_ADD, a.LOAN_TYPE, a.PRODUCT_TYPE, a.REGION, a.Occupancy_typ e, a.Unit_type, a.Documentation _type, a.Property_type , a.Transaction_t ype, a.LOCK_PERIOD, a.MIN_DTI, a.MAX_DTI, a.SPECIAL
FROM BASE_ADJUSTMENT S AS a, BASE_ADJUSTMENT S AS b
WHERE (((a.LENDER)=[b].[LENDER]) AND ((a.ADJUSTMENT) =[b].[ADJUSTMENT]) AND ((a.MIN_LTV) Between [b].[MIN_LTV] And [b].[MAX_LTV]) AND ((a.LOAN_TYPE)=[b].[LOAN_TYPE]) AND ((a.PRODUCT_TYP E)=[b].[PRODUCT_TYPE])) AND (a.MIN_LTV <> b.MIN_LTV);
[/Code]
Any ideas what I'm doing wrong?
Lender Product Min_LTV Max_LTV
Lender1 Product1 70 80
Lender2 Product1 75 80
This is what I have so far but it is returning records that arn't overlapping.
[Code=sql]
SELECT a.ID, a.LENDER, a.ADJUSTMENT, a.MIN_FICO, a.MAX_FICO, a.MIN_LOAN, a.MAX_LOAN, a.MIN_LTV, a.MAX_LTV, a.PRICE_ADD, a.RATE_ADD, a.MARGIN_ADD, a.LOAN_TYPE, a.PRODUCT_TYPE, a.REGION, a.Occupancy_typ e, a.Unit_type, a.Documentation _type, a.Property_type , a.Transaction_t ype, a.LOCK_PERIOD, a.MIN_DTI, a.MAX_DTI, a.SPECIAL
FROM BASE_ADJUSTMENT S AS a, BASE_ADJUSTMENT S AS b
WHERE (((a.LENDER)=[b].[LENDER]) AND ((a.ADJUSTMENT) =[b].[ADJUSTMENT]) AND ((a.MIN_LTV) Between [b].[MIN_LTV] And [b].[MAX_LTV]) AND ((a.LOAN_TYPE)=[b].[LOAN_TYPE]) AND ((a.PRODUCT_TYP E)=[b].[PRODUCT_TYPE])) AND (a.MIN_LTV <> b.MIN_LTV);
[/Code]
Any ideas what I'm doing wrong?
Comment