Ich habe den folgenden Code. Ich versuche, die Funktion zu testen, indem ich @Hire_Date Datetime übergebe und sehe, welcher Wert zurückgegeben würde, aber ich bin zu SQL-Server 2012 neu und habe keine Idee, wie ich das tun würde.SQL-Test eine benutzerdefinierte Funktion
Danke.
CREATE FUNCTION dbo.getYearsOfService (@Hire_Date Datetime)
RETURNS int
AS BEGIN
DECLARE @thisYear int
DECLARE @thisMonth int
DECLARE @hireYear int
DECLARE @hireMonth int
DECLARE @yearlengthOfService int
DECLARE @monthlengthOfService int
SET @thisYear = YEAR(getdate())
SET @thisMonth = MONTH(getdate())
SET @hireYear = YEAR('@Hire_Date')
SET @hireMonth = MONTH('@Hire_Date')
SET @yearlengthOfService = (@thisYear - @hireYear);
SET @monthlengthOfService = (@thisMonth - @hireMonth);
IF (@monthlengthOfService < 0)
SET @yearlengthOfService = (@yearlengthOfService - 1);
RETURN @yearlengthOfService
END;
Wussten Sie, dass SQLServer eine eigene Funktion enthält, um den Unterschied zwischen zwei Daten zu finden? https://msdn.microsoft.com/en-GB/library/ms189794.aspx –