SQL calculates the start annual leave based on the work day.
Source: Internet
Author: User
-- Calculate the start annual leave based on the working day
Declare @ settoday smalldatetime, @ birthday smalldatetime, @ year varchar (10), @ month varchar (10), @ day varchar (10), @ enddate datetime, @ Stardate datetime, @ annualnumber int, @ annualtotal int, @ surplus int
Set @ settoday = '2014-05-04 '-- current date
Set @ Birthday = '2017-04-26 '--- company date
Set @ year = datename (year, @ settoday)
Set @ month = datename (month, @ birthday)
Set @ day = datename (day, @ birthday)
--
Set @ enddate = cast (@ year + '-' + @ month + '-' + @ day as datetime)
Select @ month
Select @ enddate
If (@ enddate >=@ settoday)
Begin
Set @ Stardate = dateadd (year,-1, @ enddate) -- renew for one year
End
Else
Begin
Set @ enddate = dateadd (year, 1, @ enddate)
Set @ Stardate = cast (@ year + '-' + @ month + '-' + @ day as datetime)
End
Select @ Stardate as 'start calculation date'
Select @ enddate as 'end calculation date'
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.