समस्या यह है कि आप उपयोगकर्ता द्वारा परिभाषित फ़ंक्शन के अंदर से एक गैर-निर्धारक फ़ंक्शन को कॉल नहीं कर सकते हैं।
मैंने एक दृश्य बनाकर इस सीमा को पार कर लिया है, उस फ़ंक्शन को दृश्य के अंदर कॉल करें और उस दृश्य को अपने फ़ंक्शन के अंदर उपयोग करें, कुछ इस तरह ......
परिभाषा देखें
CREATE VIEW vw_getRANDValue
AS
SELECT RAND() AS Value
फ़ंक्शन परिभाषा
ALTER FUNCTION getNumber(@_id int )
RETURNS DECIMAL(18,4)
AS
BEGIN
DECLARE @RtnValue DECIMAL(18,4);
SELECT TOP 1 @RtnValue = EmployeeID
FROM dbo.Employees
ORDER BY EmployeeID DESC
SET @RtnValue = (SELECT Value FROM vw_getRANDValue) * @RtnValue * (1.0000/100.0000) --<-- to make sure its not converted to int
RETURN @RtnValue;
END