Oracle to SAP HANA Date Conversions
Are you migrating your reports and dashboards from Oracle to SAP HANA?
Below are some ready to use date conversion SQL formulas which would save
your significant amount of time.
Please note that I have considered Financial year from 1-April
to 31 March for year calculations. Also, number of days Calculations are
considered till previous day.
1) Current Financial year start
e.g. 1-Apr-2017
ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3)
2) Previous Financial Year start
ADD_YEARS(ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3), -1)
3) First date of current Month
ADD_DAYS(LAST_DAY(ADD_MONTHS(CURRENT_DATE, -1)), 1)
4)First date of current Month Previous year
Add_months(ADD_DAYS(LAST_DAY(ADD_MONTHS(CURRENT_DATE, -1)), 1), -12)
5)Number of days till date This Financial year
DAYS_BETWEEN(ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3), current_date)
6)Number of days till date Previous Financial Year
DAYS_BETWEEN(ADD_YEARS(ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3), -1), ADD_YEARS(CURRENT_DATE,-1))
7)Number of days in Month till previous day
DAYS_BETWEEN ( ADD_DAYS(LAST_DAY(ADD_MONTHS(CURRENT_DATE, -1)), 1), CURRENT_DATE)
8)Total Days in current fiscal year
DAYS_BETWEEN(ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3), ADD_years(ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3), 1))
9)Total Days in previous financial year
DAYS_BETWEEN(ADD_YEARS(ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3), -1), ADD_MONTHS(ADD_DAYS(CURRENT_DATE, DAYOFYEAR(CURRENT_DATE) * -1 + 1), 3))
10)Total number of days in Month this year
to_number(TO_VARCHAR(LAST_DAY(Add_days(CURRENT_DATE, -1)), 'DD'))
11)Total number of days in Month Previous year
to_number(TO_VARCHAR( Last_day( ADD_MONTHS(Add_days(CURRENT_DATE, -1),-12)),'DD'))
12)Number of days remaining in month
to_number(TO_VARCHAR(LAST_DAY(Add_days(CURRENT_DATE, -1)), 'DD')) - to_number(TO_VARCHAR(Add_days(CURRENT_DATE, -1), 'DD'))
Thanks for reading. Do let me know if you have any concern or suggestions on above conversions.
to_number(TO_VARCHAR(LAST_DAY(Add_days(CURRENT_DATE, -1)), 'DD'))
11)Total number of days in Month Previous year
to_number(TO_VARCHAR( Last_day( ADD_MONTHS(Add_days(CURRENT_DATE, -1),-12)),'DD'))
12)Number of days remaining in month
to_number(TO_VARCHAR(LAST_DAY(Add_days(CURRENT_DATE, -1)), 'DD')) - to_number(TO_VARCHAR(Add_days(CURRENT_DATE, -1), 'DD'))
Thanks for reading. Do let me know if you have any concern or suggestions on above conversions.
Comments
Post a Comment