Reputation: 23
How do i convert English date 2017/11/11 to its Nepali date(date according to Nepali calendar) .I have searched lot of article but couldn't found any article based on that.Please help
Upvotes: 0
Views: 8764
Reputation: 11
MySQL Function :
DELIMITER $$
CREATE FUNCTION `ad2bs`(`ad` VARCHAR(10)) RETURNS varchar(10) CHARSET latin1
DETERMINISTIC
BEGIN
DECLARE year INT;
DECLARE month INT;
DECLARE day INT;
DECLARE bs varchar(10);
SET @cumulative_sum = DATEDIFF(ad, '1943-04-14');
SELECT
BS_Year,
IF((BS_Month + 1) > 12, (BS_Month + 1) % 12, BS_Month + 1),
running_total + 1
INTO
year, month, day
FROM (
SELECT *,
@cumulative_sum := @cumulative_sum - no_of_days AS running_total
FROM datelog
ORDER BY SNo
) AS subquery
WHERE running_total <= no_of_days
ORDER BY SNo ASC
LIMIT 1;
RETURN CONCAT(year, '-', LPAD(month, 2, '0'), '-', LPAD(day, 2, '0'));
END$$
DELIMITER ;
CREATE TABLE datelog (
SNo int(8) NOT NULL,
BS_Year int(11) DEFAULT NULL,
BS_Month int(11) DEFAULT NULL,
no_of_days varchar(255) DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO datelog (SNo, BS_Year, BS_Month, no_of_days) VALUES
(1, 2000, 1, '30'),
(2, 2000, 2, '32'),
(3, 2000, 3, '31'),
(4, 2000, 4, '32'),
(5, 2000, 5, '31'),
(6, 2000, 6, '30'),
(7, 2000, 7, '30'),
(8, 2000, 8, '30'),
(9, 2000, 9, '29'),
(10, 2000, 10, '30'),
(11, 2000, 11, '29'),
(12, 2000, 12, '31'),
(13, 2001, 1, '31'),
(14, 2001, 2, '31'),
(15, 2001, 3, '32'),
(16, 2001, 4, '31'),
(17, 2001, 5, '31'),
(18, 2001, 6, '31'),
(19, 2001, 7, '30'),
(20, 2001, 8, '29'),
(21, 2001, 9, '30'), .. so on
Upvotes: 0
Reputation: 1
Here for the exact solution i have created date library first and stored it in a table:
CREATE TABLE [dbo].[DateData]
(
[Year] [float] NULL,
[Baishakh] [float] NULL,
[Jestha] [float] NULL,
[Ashad] [float] NULL,
[Shrawan] [float] NULL,
[Bhadra] [float] NULL,
[Ashwin] [float] NULL,
[Kartik] [float] NULL,
[Mangshir] [float] NULL,
[Poush] [float] NULL,
[Magh] [float] NULL,
[Falgun] [float] NULL,
[Chaitra] [float] NULL
)
INSERT INTO dbo.DateData
(
Year,
Baishakh,
Jestha,
Ashad,
Shrawan,
Bhadra,
Ashwin,
Kartik,
Mangshir,
Poush,
Magh,
Falgun,
Chaitra
)
Select '1975'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1976'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '1977'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '1978'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1979'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1980'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '1981'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1982'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1983'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1984'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '1985'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1986'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1987'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1988'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '1989'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1990'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1991'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1992'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '1993'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1994'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1995'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1996'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '1997'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1998'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '1999'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2000'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2001'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2002'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2003'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2004'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2005'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2006'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2007'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2008'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'29'Falgun,'31'Chaitra Union All
Select '2009'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2010'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2011'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2012'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2013'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2014'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2015'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2016'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2017'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2018'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2019'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2020'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2021'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2022'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2023'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2024'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2025'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2026'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2027'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2028'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2029'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'32'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2030'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2031'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2032'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2033'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2034'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2035'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'29'Falgun,'31'Chaitra Union All
Select '2036'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2037'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2038'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2039'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2040'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2041'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2042'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2043'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2044'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2045'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2046'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2047'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2048'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2049'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2050'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2051'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2052'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2053'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2054'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2055'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2056'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'32'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2057'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2058'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2059'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2060'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2061'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2062'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2063'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2064'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2065'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2066'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'29'Falgun,'31'Chaitra Union All
Select '2067'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2068'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2069'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2070'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2071'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2072'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2073'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'31'Chaitra Union All
Select '2074'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2075'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2076'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2077'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2078'Year,'31'Baishakh,'31'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2079'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2080'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2081'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2082'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2083'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2084'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2085'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'30'Bhadra,'31'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2086'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2087'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2088'Year,'30'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'30'Bhadra,'31'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2089'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2090'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2091'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2092'Year,'30'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2093'Year,'30'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2094'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2095'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2096'Year,'30'Baishakh,'31'Jestha,'32'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'29'mangshir,'30'Poush,'29'Magh,'30'Falgun,'30'Chaitra Union All
Select '2097'Year,'31'Baishakh,'32'Jestha,'31'Ashad,'32'Shrawan,'31'Bhadra,'30'Ashwin,'30'Kartik,'30'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra Union All
Select '2098'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'29'Kartik,'30'mangshir,'29'Poush,'30'Magh,'29'Falgun,'31'Chaitra Union All
Select '2099'Year,'31'Baishakh,'31'Jestha,'32'Ashad,'31'Shrawan,'31'Bhadra,'31'Ashwin,'30'Kartik,'29'mangshir,'29'Poush,'30'Magh,'30'Falgun,'30'Chaitra
CREATE FUNCTION [dbo].[fn_AD_BS_Conversion] ( @EnglishDate DATE,@separator VARCHAR(250) )
RETURNS VARCHAR(50)
AS
BEGIN
DECLARE
@DayDiff INT ,
@Result VARCHAR(50),
--@EnglishDate DATE,
@YearSn BIGINT=1,
@YearMaxSn BIGINT,
@Baishakh BIGINT,
@Jestha BIGINT,
@Ashad BIGINT,
@Shrawan BIGINT,
@Bhadra BIGINT,
@Ashwin BIGINT,
@Kartik BIGINT,
@Mangshir BIGINT,
@Poush BIGINT,
@Magh BIGINT,
@Falgun BIGINT,
@Chaitra BIGINT,
@Year BIGINT,
---- declaration of static date
@staticenglishdate DATE='1918-04-13',
@staticnepaliyear int='1975',
@staticnepalimonth VARCHAR(250)='01',
@staticnepaliday int='01',
@month VARCHAR(250),
@day VARCHAR(250),
@remainingDays BIGINT
SELECT @separator=ISNULL(@separator,'-')
DECLARE @Dates TABLE
(
RowNo BIGINT,
[Year] [float] NULL,
[Baishakh] [float] NULL,
[Jestha] [float] NULL,
[Ashad] [float] NULL,
[Shrawan] [float] NULL,
[Bhadra] [float] NULL,
[Ashwin] [float] NULL,
[Kartik] [float] NULL,
[Mangshir] [float] NULL,
[Poush] [float] NULL,
[Magh] [float] NULL,
[Falgun] [float] NULL,
[Chaitra] [float] NULL
)
SELECT @DayDiff = DATEDIFF(DAY,@staticenglishdate,@EnglishDate)+1
SELECT @remainingDays=@DayDiff
INSERT INTO @Dates
(
RowNo,
Year,
Baishakh,
Jestha,
Ashad,
Shrawan,
Bhadra,
Ashwin,
Kartik,
Mangshir,
Poush,
Magh,
Falgun,
Chaitra
)
SELECT ROW_NUMBER() OVER (ORDER BY DD.Year) RowNo, DD.Year,
DD.Baishakh,DD.Jestha,DD.Ashad,DD.Shrawan,DD.Bhadra,DD.Ashwin,DD.Kartik,DD.MangshirDD.Poush,DD.Magh,DD.Falgun,DD.Chaitra FROM dbo.DateData AS DD WHERE DD.Year>=@staticnepaliyear ORDER BY DD.Year ASC
SELECT @YearMaxSn=MAX(D.RowNo) FROM @Dates AS D
WHILE @DayDiff>0
BEGIN
IF @remainingDays>0
BEGIN
SELECT @Baishakh=D.Baishakh,@Jestha=D.Jestha,@Ashad=D.Ashad,@Shrawan=D.Shrawan,@Bhadra=D.Bhadra,@Ashwin=D.Ashwin,@Kartik=D.Kartik,@Mangshir=D.Mangshir,@Poush=D.Poush,@Magh=D.Magh,
@Falgun=D.Falgun,@Chaitra=D.Chaitra,@Year=D.Year
FROM @Dates AS D WHERE D.RowNo=@YearSn
END
IF @DayDiff>=0
BEGIN
IF (@DayDiff-@Baishakh<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='01'
END
ELSE
BEGIN
SELECT @DayDiff-=@Baishakh
END
SELECT @remainingDays-=@Baishakh
IF (@DayDiff-@Jestha<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='02'
END
ELSE
BEGIN
SELECT @DayDiff-=@Jestha
END
SELECT @remainingDays-=@Jestha
IF (@DayDiff-@Ashad<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='03'
END
ELSE
BEGIN
SELECT @DayDiff-=@Ashad
END
SELECT @remainingDays-=@Ashad
IF (@DayDiff-@Shrawan<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='04'
END
ELSE
BEGIN
SELECT @DayDiff-=@Shrawan
END
SELECT @remainingDays-=@Shrawan
IF (@DayDiff-@Bhadra<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='05'
END
ELSE
BEGIN
SELECT @DayDiff-=@Bhadra
END
SELECT @remainingDays-=@Bhadra
IF (@DayDiff-@Ashwin<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='06'
END
ELSE
BEGIN
SELECT @DayDiff-=@Ashwin
END
SELECT @remainingDays-=@Ashwin
IF (@DayDiff-@Kartik<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='07'
END
ELSE
BEGIN
SELECT @DayDiff-=@Kartik
END
SELECT @remainingDays-=@Kartik
IF (@DayDiff-@Mangshir<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='08'
END
ELSE
BEGIN
SELECT @DayDiff-=@Mangshir
END
SELECT @remainingDays-=@Mangshir
IF (@DayDiff-@Poush<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='09'
END
ELSE
BEGIN
SELECT @DayDiff-=@Poush
END
SELECT @remainingDays-=@Poush
IF (@DayDiff-@Magh<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='10'
END
ELSE
BEGIN
SELECT @DayDiff-=@Magh
END
SELECT @remainingDays-=@Magh
IF (@DayDiff-@Falgun<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='11'
END
ELSE
BEGIN
SELECT @DayDiff-=@Falgun
END
SELECT @remainingDays-=@Falgun
IF (@DayDiff-@Chaitra<=0 AND @remainingDays>0)
BEGIN
SELECT @day=@DayDiff,@month='12'
END
ELSE
BEGIN
SELECT @DayDiff-=@Chaitra
END
SELECT @remainingDays-=@Chaitra
END
ELSE
BEGIN
SELECT @day = CASE WHEN LEN(@day)<2 THEN '0'+@day ELSE @day END
SELECT @Result=CAST(@Year AS VARCHAR(250))+@separator+@month+@separator+@day
BREAK
END
IF @DayDiff<=0
BEGIN
SELECT @day = CASE WHEN LEN(@day)<2 THEN '0'+@day ELSE @day END
SELECT @Result=CAST(@Year AS VARCHAR(250))+@separator+@month+@separator+@day
BREAK
END
SELECT @YearSn+=1
END
RETURN @Result
END;
SELECT dbo.fn_AD_BS_Conversion('1945-04-12','/')
then it returns
2001/12/30
Upvotes: 0
Reputation: 391
English Date: Anno Domini (AD) and Nepali Date: Bikram Sambat (BS) Date Converter. Converting AD to BS is not a rocket science, all it depends on data mapping. Here, I have created Table DateLog which holds English Date as well as Nepali Date. Conversion Logic reside in this scalar function [dbo].[ufn_GetBikramSambatDate].
/****** Object: Table [dbo].[DateLog] Script Date: 5/4/2018 4:47:27 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[DateLog](
[SNo] [int] IDENTITY(1,1) NOT NULL,
[BS_Year] [int] NULL,
[BS_Month] [tinyint] NULL,
[EnglishDate] [date] NULL,
PRIMARY KEY CLUSTERED
(
[SNo] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET IDENTITY_INSERT [dbo].[DateLog] ON
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (1, 2073, 4, CAST(N'2016-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (2, 2073, 5, CAST(N'2016-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (3, 2073, 6, CAST(N'2016-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (4, 2073, 7, CAST(N'2016-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (5, 2073, 8, CAST(N'2016-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (6, 2073, 9, CAST(N'2016-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (7, 2073, 10, CAST(N'2017-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (8, 2073, 11, CAST(N'2017-02-12' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (9, 2073, 12, CAST(N'2017-03-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (10, 2074, 1, CAST(N'2017-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (11, 2074, 2, CAST(N'2017-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (12, 2074, 3, CAST(N'2017-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (13, 2074, 4, CAST(N'2017-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (14, 2074, 5, CAST(N'2017-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (15, 2074, 6, CAST(N'2017-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (16, 2074, 7, CAST(N'2017-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (17, 2074, 8, CAST(N'2017-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (18, 2074, 9, CAST(N'2017-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (19, 2074, 10, CAST(N'2018-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (20, 2074, 11, CAST(N'2018-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (21, 2074, 12, CAST(N'2018-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (22, 2075, 1, CAST(N'2018-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (23, 2075, 2, CAST(N'2018-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (24, 2075, 3, CAST(N'2018-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (25, 2075, 4, CAST(N'2018-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (26, 2075, 5, CAST(N'2018-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (27, 2075, 6, CAST(N'2018-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (28, 2075, 7, CAST(N'2018-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (29, 2075, 8, CAST(N'2018-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (30, 2075, 9, CAST(N'2018-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (31, 2075, 10, CAST(N'2019-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (32, 2075, 11, CAST(N'2019-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (33, 2075, 12, CAST(N'2019-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (34, 2076, 1, CAST(N'2019-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (35, 2076, 2, CAST(N'2019-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (36, 2076, 3, CAST(N'2019-06-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (37, 2076, 4, CAST(N'2019-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (38, 2076, 5, CAST(N'2019-08-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (39, 2076, 6, CAST(N'2019-09-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (40, 2076, 7, CAST(N'2019-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (41, 2076, 8, CAST(N'2019-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (42, 2076, 9, CAST(N'2019-12-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (43, 2076, 10, CAST(N'2020-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (44, 2076, 11, CAST(N'2020-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (45, 2076, 12, CAST(N'2020-03-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (46, 2077, 1, CAST(N'2020-04-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (47, 2077, 2, CAST(N'2020-05-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (48, 2077, 3, CAST(N'2020-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (49, 2077, 4, CAST(N'2020-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (50, 2077, 5, CAST(N'2020-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (51, 2077, 6, CAST(N'2020-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (52, 2077, 7, CAST(N'2020-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (53, 2077, 8, CAST(N'2020-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (54, 2077, 9, CAST(N'2020-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (55, 2077, 10, CAST(N'2021-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (56, 2077, 11, CAST(N'2021-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (57, 2077, 12, CAST(N'2021-03-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (58, 2078, 1, CAST(N'2021-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (59, 2078, 2, CAST(N'2021-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (60, 2078, 3, CAST(N'2021-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (61, 2078, 4, CAST(N'2021-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (62, 2078, 5, CAST(N'2021-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (63, 2078, 6, CAST(N'2021-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (64, 2078, 7, CAST(N'2021-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (65, 2078, 8, CAST(N'2021-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (66, 2078, 9, CAST(N'2021-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (67, 2078, 10, CAST(N'2022-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (68, 2078, 11, CAST(N'2022-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (69, 2078, 12, CAST(N'2022-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (70, 2079, 1, CAST(N'2022-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (71, 2079, 2, CAST(N'2022-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (72, 2079, 3, CAST(N'2022-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (73, 2079, 4, CAST(N'2022-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (74, 2079, 5, CAST(N'2022-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (75, 2079, 6, CAST(N'2022-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (76, 2079, 7, CAST(N'2022-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (77, 2079, 8, CAST(N'2022-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (78, 2079, 9, CAST(N'2022-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (79, 2079, 10, CAST(N'2023-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (80, 2079, 11, CAST(N'2023-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (81, 2079, 12, CAST(N'2023-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (82, 2080, 1, CAST(N'2023-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (83, 2080, 2, CAST(N'2023-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (84, 2080, 3, CAST(N'2023-06-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (85, 2080, 4, CAST(N'2023-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (86, 2080, 5, CAST(N'2023-08-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (87, 2080, 6, CAST(N'2023-09-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (88, 2080, 7, CAST(N'2023-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (89, 2080, 8, CAST(N'2023-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (90, 2080, 9, CAST(N'2023-12-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (91, 2080, 10, CAST(N'2024-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (92, 2080, 11, CAST(N'2024-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (93, 2080, 12, CAST(N'2024-03-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (94, 2081, 1, CAST(N'2024-04-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (95, 2081, 2, CAST(N'2024-05-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (96, 2081, 3, CAST(N'2024-06-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (97, 2081, 4, CAST(N'2024-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (98, 2081, 5, CAST(N'2024-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (99, 2081, 6, CAST(N'2024-09-17' AS Date))
GO
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (100, 2081, 7, CAST(N'2024-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (101, 2081, 8, CAST(N'2024-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (102, 2081, 9, CAST(N'2024-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (103, 2081, 10, CAST(N'2025-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (104, 2081, 11, CAST(N'2025-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (105, 2081, 12, CAST(N'2025-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (106, 2082, 1, CAST(N'2025-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (107, 2082, 2, CAST(N'2025-05-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (108, 2082, 3, CAST(N'2025-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (109, 2082, 4, CAST(N'2025-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (110, 2082, 5, CAST(N'2025-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (111, 2082, 6, CAST(N'2025-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (112, 2082, 7, CAST(N'2025-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (113, 2082, 8, CAST(N'2025-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (114, 2082, 9, CAST(N'2025-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (115, 2082, 10, CAST(N'2026-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (116, 2082, 11, CAST(N'2026-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (117, 2082, 12, CAST(N'2026-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (118, 2083, 1, CAST(N'2026-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (119, 2083, 2, CAST(N'2026-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (120, 2083, 3, CAST(N'2026-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (121, 2083, 4, CAST(N'2026-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (122, 2083, 5, CAST(N'2026-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (123, 2083, 6, CAST(N'2026-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (124, 2083, 7, CAST(N'2026-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (125, 2083, 8, CAST(N'2026-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (126, 2083, 9, CAST(N'2026-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (127, 2083, 10, CAST(N'2027-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (128, 2083, 11, CAST(N'2027-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (129, 2083, 12, CAST(N'2027-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (130, 2084, 1, CAST(N'2027-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (131, 2084, 2, CAST(N'2027-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (132, 2084, 3, CAST(N'2027-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (133, 2084, 4, CAST(N'2027-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (134, 2084, 5, CAST(N'2027-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (135, 2084, 6, CAST(N'2027-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (136, 2084, 7, CAST(N'2027-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (137, 2084, 8, CAST(N'2027-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (138, 2084, 9, CAST(N'2027-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (139, 2084, 10, CAST(N'2028-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (140, 2084, 11, CAST(N'2028-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (141, 2084, 12, CAST(N'2028-03-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (142, 2085, 1, CAST(N'2028-04-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (143, 2085, 2, CAST(N'2028-05-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (144, 2085, 3, CAST(N'2028-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (145, 2085, 4, CAST(N'2028-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (146, 2085, 5, CAST(N'2028-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (147, 2085, 6, CAST(N'2028-09-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (148, 2085, 7, CAST(N'2028-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (149, 2085, 8, CAST(N'2028-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (150, 2085, 9, CAST(N'2028-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (151, 2085, 10, CAST(N'2029-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (152, 2085, 11, CAST(N'2029-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (153, 2085, 12, CAST(N'2029-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (154, 2086, 1, CAST(N'2029-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (155, 2086, 2, CAST(N'2029-05-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (156, 2086, 3, CAST(N'2029-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (157, 2086, 4, CAST(N'2029-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (158, 2086, 5, CAST(N'2029-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (159, 2086, 6, CAST(N'2029-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (160, 2086, 7, CAST(N'2029-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (161, 2086, 8, CAST(N'2029-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (162, 2086, 9, CAST(N'2029-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (163, 2086, 10, CAST(N'2030-01-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (164, 2086, 11, CAST(N'2030-02-13' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (165, 2086, 12, CAST(N'2030-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (166, 2087, 1, CAST(N'2030-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (167, 2087, 2, CAST(N'2030-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (168, 2087, 3, CAST(N'2030-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (169, 2087, 4, CAST(N'2030-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (170, 2087, 5, CAST(N'2030-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (171, 2087, 6, CAST(N'2030-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (172, 2087, 7, CAST(N'2030-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (173, 2087, 8, CAST(N'2030-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (174, 2087, 9, CAST(N'2030-12-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (175, 2087, 10, CAST(N'2031-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (176, 2087, 11, CAST(N'2031-02-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (177, 2087, 12, CAST(N'2031-03-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (178, 2088, 1, CAST(N'2031-04-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (179, 2088, 2, CAST(N'2031-05-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (180, 2088, 3, CAST(N'2031-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (181, 2088, 4, CAST(N'2031-07-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (182, 2088, 5, CAST(N'2031-08-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (183, 2088, 6, CAST(N'2031-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (184, 2088, 7, CAST(N'2031-10-18' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (185, 2088, 8, CAST(N'2031-11-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (186, 2088, 9, CAST(N'2031-12-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (187, 2088, 10, CAST(N'2032-01-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (188, 2088, 11, CAST(N'2032-02-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (189, 2088, 12, CAST(N'2032-03-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (190, 2089, 1, CAST(N'2032-04-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (191, 2089, 2, CAST(N'2032-05-14' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (192, 2089, 3, CAST(N'2032-06-15' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (193, 2089, 4, CAST(N'2032-07-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (194, 2089, 5, CAST(N'2032-08-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (195, 2089, 6, CAST(N'2032-09-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (196, 2089, 7, CAST(N'2032-10-17' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (197, 2089, 8, CAST(N'2032-11-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (198, 2089, 9, CAST(N'2032-12-16' AS Date))
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (199, 2089, 10, CAST(N'2033-01-14' AS Date))
GO
INSERT [dbo].[DateLog] ([SNo], [BS_Year], [BS_Month], [EnglishDate]) VALUES (200, 2089, 11, CAST(N'2033-02-13' AS Date))
SET IDENTITY_INSERT [dbo].[DateLog] OFF
/****** Object: UserDefinedFunction [dbo].[ufn_GetBikramSambatDate] Script Date: 5/4/2018 4:47:27 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Sameer>
-- Create date: <Create Date, 2018-05-04,>
-- Description: <Description, ,Scalar Function to convert English date to Nepali Date (Bikram Sambat)>
-- =============================================
CREATE FUNCTION [dbo].[ufn_GetBikramSambatDate] ( @EnglishDate DATE )
RETURNS VARCHAR(50)
AS
BEGIN
DECLARE @BS_Year INT ,
@BS_Month VARCHAR(2) ,
@NpDay VARCHAR(2) ,
@EngDay DATE ,
@DayDiff INT ,
@DayName INT ,
@Result VARCHAR(50);
SELECT @EngDay = EnglishDate ,
@BS_Year = BS_Year ,
@BS_Month = BS_Month
FROM dbo.DateLog (NOLOCK)
WHERE DATEDIFF(DAY, EnglishDate, @EnglishDate) >= 0
ORDER BY EnglishDate;
SELECT @DayDiff = DATEDIFF(DAY, @EngDay, @EnglishDate);
SELECT @NpDay = 1 + @DayDiff;
SET @NpDay = REPLICATE('0', 2 - LEN(@NpDay)) + @NpDay;
SET @BS_Month = REPLICATE('0', 2 - LEN(@BS_Month)) + @BS_Month;
SET @Result = CONVERT(VARCHAR(4), @BS_Year) + '-'
+ CONVERT(VARCHAR(2), @BS_Month) + '-'
+ CONVERT(VARCHAR(2), @NpDay);
RETURN (@Result);
END;
GO
Execute below function:
SELECT dbo.[ufn_GetBikramSambatDate]('2018-04-14')
Upvotes: 3
Reputation: 8859
Nepali Calendar is based on Bikram Sambat and is 56 years and 8 months ahead of A.D. The Bikram Sambat calendar was started in 57 B.C. by King Bikramaditya in India.
there is an approximate difference of 57 years, 8 months and 16 days between these dates. To obtain BS date, you need to add 57 years, 8 months and 16 days to AD date. But the main problem is that there may be a difference of +/- 3 days
I Assuming 56 years and 8 months
SELECT GETDATE() AS 'English Date',
DATEADD(MONTH,8,DATEADD(YEAR,56,GETDATE())) AS 'Nepali date'
for more information about DATEADD
Upvotes: 0