23-10-18, 11:27 AM
جرب هذا
قم بإنشاء دالة Function داخل SqlServer بإسم GetPremiumTotal
ويتم استخدام الدالة GetPremiumTotal بالطريقة التالية
قم بإنشاء دالة Function داخل SqlServer بإسم GetPremiumTotal
كود :
CREATE FUNCTION dbo.GetPremiumTotal(
@salary float,
@dateStart date,
@dateEnd date,
@premium float)
RETURNS float
AS
BEGIN
DECLARE @yearFrac float;
SET @yearFrac = DATEDIFF(d, @dateStart, @dateEnd) / 365 ;
DECLARE @premiumTotal float;
SET @premiumTotal = ROUND( ((POWER( (1+ @premium), @yearFrac ) -1) * @salary), 2, 1) ;
RETURN @premiumTotal;
ENDويتم استخدام الدالة GetPremiumTotal بالطريقة التالية
كود :
SELECT GetPremiumTotal(Salary, DateStart, DateEnd, Premium) AS PremiumTotal
FROM Employees