다음은 내 테이블 구조입니다. 나는 각 속성에 대한 임대 기간에 대한 임대료를 계산해야합니다전년 대비 증가량 계산 SQL Server 2008R2
- 지역 = 1280
- 의 startDate = 2023년 2월 1일
- 종료 날짜 = 2027- :
는 이제 부동산 ID = 12077 살펴 보자 10-31
- BaseRent = 21.53
- RentIncreasePercent = 0.04 (4 %) = 12개월
- IncreaseRepeatMonths (참고 : 최초 12 회 개월 다시 증가하지 않을 것임)
이 자산 임대는 2023 년과 2028 년 사이에 시작하고 끝나기 때문에 매년 수집해야하는 임대료 금액을 알고 싶습니다. 이것은 12 개월마다 증가하는 비율 (복합 임대료 인상)을 고려할 것입니다.
예 :
21.53 * 1280은 처음 12 개월 동안 집세를냅니다. 그러나 2 월에 임대가 시작되어 2023 년에 임대료 총액 = ((21.23 * 1280)/12) * 11
2024 년의 경우 임대료 만료이므로 첫 달 임대료 = (21.23 * 1280)/12가됩니다. 12 개월마다 증가합니다. 1224 년의 다음 11 개월 동안 임대료는 ((12.23 * 1.04 * 1280)/12) * 11.
입니다. 2025 년의 경우 첫 월 임대료는 (12.23 * 1.04 * 1280)/12가됩니다. 그러나 2025 년의 다음 11 개월은 ((12.72 * 1.04 * 1280)/12) * 11이 될 것입니다. 12.72는 화합물 증가에 기인합니다.
어떻게해야 할 것입니까? 나에게 가장 혼란스러운 부분은 1 월에 시작하지 않을리스 시작 날짜를 어떻게 조정할지를 모른다는 것입니다.
declare @table table
(
PropertyID int,
area int,
StartDate date,
EndDate date,
BaseRent decimal(12,2),
RentIncreaseBasis varchar(30),
RentIncreasePercent decimal(5,2),
IncreaseRepeatMonths int
)
insert @table values (12076, 5627, '2024-01-01', '2028-12-31', '16.52', '% Increase', 0.03, 12)
insert @table values (12077, 1280, '2023-02-01', '2027-10-31', '21.53', '% Increase', 0.04, 12)
insert @table values (12078, 1000, '2017-03-01', '2025-11-30', '23.52', '% Increase', 0.01, 12)
insert @table values (12079, 2000, '2020-02-01', '2024-09-30', '15.57', '% Increase', 0.05, 12)
insert @table values (12080, 3000, '2018-05-01', '2020-08-31', '18.58', '% Increase', 0.04, 12)
insert @table values (12081, 4000, '2019-08-01', '2020-12-31', '22.56', '% Increase', 0.03, 12)
insert @table values (12082, 5000, '2017-02-01', '2028-03-31', '19.53', '% Increase', 0.02, 12)
select * from @table
순수 SQL (NO T-SQL)에 그것을 할 의도가 SQL 2008에서 작동합니다 희망? – SmartDumb
당신이해야 할 일은 달력 연도와 '임대'연도를 사용하여 날짜 범위를 월 단위로 분해하는 것입니다. 따라서 시작일은 2 개월, 2023 년, 임대 년 0입니다. 다음 행 3 월, 2023 년 임대, 0 년 임대. 12 번째 행은 1 월 (1 월), 2024 년 임대, 13 번째 달은 임대입니다. 2, cal yr 2024, yr yy 1 그러면 달력을 분리하고 임대료 인상을위한 승수로 사용 된 '임대'월에 필요한 데이터가 있어야합니다. – Beth
@SmartDumb보기에서 다른 저장 프로 시저 논리로 연결하는 것이 필요합니다. 그러나 성능이 있다면 t-SQL도 잘 작동합니다. 하루가 끝나면 데이터는 복잡한 ssrs 보고서에서 사용됩니다. – NonProgrammer