शायद यह बोझिल है, लेकिन मुझे नहीं लगता कि इसे आसान तरीके से कैसे किया जाए।
सबसे पहले, एक फ़ंक्शन बनाएं। यह फ़ंक्शन सिस्टम व्यू sys का उपयोग करेगा .sysभाषाएं स्पेनिश में महीने का सही नाम पाने के लिए। पैरामीटर एक मान्य दिनांक और भाषा हैं (उपनाम sys.syslanguage दृश्य पर)।
CREATE FUNCTION [dbo].[fn_GetMonthName] (
@Date DATETIME,
@Language NVARCHAR(100)
)
RETURNS NVARCHAR(400)
AS
BEGIN
DECLARE @i INT, @m INT,@mlist NVARCHAR(1000)
SET @m = MONTH(@Date)
SET @mlist = (SELECT months FROM sys.syslanguages WHERE ALIAS = @language)
SET @i = 1
WHILE(@i < @m)
BEGIN
SET @mlist = REPLACE(@mlist, SUBSTRING(@mlist,1,CHARINDEX(',',@mlist)) ,'')
SET @i = @i + 1
END
SET @mlist = (CASE CHARINDEX(',',@mlist) WHEN 0 THEN @mlist ELSE SUBSTRING(@mlist,0,CHARINDEX(',',@mlist) ) END )
RETURN @mlist
END
GO
फिर फ़ंक्शन को कहीं भी कॉल करें जिसकी आपको आवश्यकता है:
SELECT CONVERT(VARCHAR(20), GETDATE(), 100) AS CurrentDate,
dbo.fn_GetMonthName (GETDATE(), 'Spanish') AS [Mes-Month]
परिणाम:
CurrentDate Mes-Month
May 24 2013 12:02AM Mayo
भाषा विशिष्ट माह प्राप्त करें से लिया गया SQL से नाम