--------------------
Select * from [dbo].[AgeCalculator]('02/21/1988')--Date Of Birth--
------------------
Create FUNCTION [dbo].[AgeCalculator]
(
@DOB datetime ='07/09/2011' --Today date or current date--
)
RETURNS
@Age TABLE
(
Year_Diff int,
AgeType varchar(10)
)
AS
BEGIN
Declare @Year_Diff int,@AgeType varchar (10),@GetDate datetime
SELECT @GetDate = GETDATE ()
SELECT @Year_Diff = DATEDIFF(year,@DOB,@GetDate)
Select @AgeType = 'Years'
IF @Year_Diff = 0
Begin
SELECT @Year_Diff = DATEDIFF(MONTH,@DOB,@GetDate)
Select @AgeType = 'Months'
If @Year_Diff = 0
begin
SELECT @Year_Diff = DATEDIFF(DAY,@DOB,@GetDate)
Select @AgeType = 'Days'
End
End
else
IF Month(@GetDate) < Month(@DOB)
Set @Year_Diff= @Year_Diff - 1
Insert into @Age
Select @Year_Diff,@AgeType
Return
END
GO
Select * from [dbo].[AgeCalculator]('02/21/1988')--Date Of Birth--
------------------
Create FUNCTION [dbo].[AgeCalculator]
(
@DOB datetime ='07/09/2011' --Today date or current date--
)
RETURNS
@Age TABLE
(
Year_Diff int,
AgeType varchar(10)
)
AS
BEGIN
Declare @Year_Diff int,@AgeType varchar (10),@GetDate datetime
SELECT @GetDate = GETDATE ()
SELECT @Year_Diff = DATEDIFF(year,@DOB,@GetDate)
Select @AgeType = 'Years'
IF @Year_Diff = 0
Begin
SELECT @Year_Diff = DATEDIFF(MONTH,@DOB,@GetDate)
Select @AgeType = 'Months'
If @Year_Diff = 0
begin
SELECT @Year_Diff = DATEDIFF(DAY,@DOB,@GetDate)
Select @AgeType = 'Days'
End
End
else
IF Month(@GetDate) < Month(@DOB)
Set @Year_Diff= @Year_Diff - 1
Insert into @Age
Select @Year_Diff,@AgeType
Return
END
GO
No comments:
Post a Comment