판매 금액이 현지 통화로 저장된 판매 테이블과 통화 변환율이 포함 된 환율 테이블이있는 경우 각 판매 날짜에 대한 총 판매 금액을 USD로 가져 오려면 쿼리가 필요합니다.
판매 테이블 :
Sales Date Sales Amount Currency
01-JAN-16 500 INR
01-JAN-16 100 GBP
02-JAN-16 1000 INR
02-JAN-16 150 GBP
03-JAN-16 1500 INR
환율 표 :
Source Currency Target Currency Exchange Rate Effective Start Date
INR USD 0.014 31-DEC-15
INR USD 0.015 02-JAN-16
GBP USD 1.32 20-DEC-15
GBP USD 1.30 01-JAN-16
GBP USD 1.35 10-JAN-16
어떻게 진행해야할지 모르겠다
통화와 일치하는 두 가지 작업을 수행 한 다음 동일한 날짜 환율 또는 sales_date 이전에 확인해야합니다.
이 시도:
with SOURCE as
(
select s1.*, coalesce(e1.Rate, 1) as ExRate, row_number() over(partition by e2.Source order by e2.StartDate desc) as r_num
from Sales s1
left join Exchange e2
on s1.Currency = e2.Source
and e2.StartDate <= s1.SalesDate
)
select SOURCE.*, SalesAmount*ExRate as USDAmount
from SOURCE
where r_num = 1
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다