मैं यह फ़ंक्शन एक डेटाटाइम लेने और दशमलव के रूप में व्यक्त किए गए समय को वापस करने के लिए चाहता हूं। E.G. - 2:33 PM पर 14,55यह फ़ंक्शन दशमलव क्यों नहीं लौटाता है?
ALTER FUNCTION [dbo].[GetTimeAsDecimal](
@DateTime as datetime
) RETURNS decimal
AS
BEGIN
DECLARE @hour decimal
DECLARE @min decimal
DECLARE @result decimal
SELECT @hour = DATEPART(HOUR, @DateTime)
SELECT @min = (DATEPART(MINUTE, @DateTime)/60.0)
SELECT @result = @hour + @min
RETURN @result
END
ऐसा ही एक क्वेरी अपेक्षित परिणाम का उत्पादन के रूप में वापस कर दी जाएगी ...
SELECT DATEPART(HOUR, getDate()) + (DATEPART(MINUTE, getDate())/60.0)
2:33 का अनुवाद 14.55 (33/60 = 0.55) के रूप में नहीं है? साथ ही, यदि समान क्वेरी काम करती है, तो इसका उपयोग क्यों न करें? – LittleBobbyTables
हाँ, वह बिट एक टाइपो था। यह सही है। क्या मुझे वास्तव में आपको बताने की ज़रूरत है कि मैं एक समारोह क्यों करना पसंद करूंगा? –
नहीं, मुझे नहीं लगता :) – LittleBobbyTables