i am trying to get last day of hijri calender,
First i am defining my queries and logic, This query getting my hijri dates.
SELECT top 1 convert(date,dateHijri,103) , datepart(year,try_convert(date,dateHijri,103))
from Item
it gives me result,
1440-07-19 , 1440
This query getting last date of georgian calender,
select top 1 DATEADD(MILLISECOND, -3,DATEADD(YEAR, DATEDIFF(YEAR, 0, GETDATE()) + 1, 0)) 'Last Day of Georgian Year'
Result : 2018-12-31 23:59:59.997
Now, my final query in which i am trying to get last day of hijri year try to merg first and second query,
select top 1 DATEADD(MILLISECOND, -3,DATEADD(YEAR, DATEDIFF(YEAR, 0, convert(date,dateHijri,103)) + 1, 0)) as 'Last Day of Hijri Year' from Item
Error:The conversion of a date data type to a datetime data type resulted in an out-of-range value.
hopes for your suggestion thanks
you can try this
select top 1 DATEADD(MILLISECOND, -3, CONVERT(DATETIME, CONVERT(VARCHAR(4), YEAR(convert(date,dateHijri,103)) + 1)+'0101', 131)) as 'Last Day of Hijri Year' from Item