Kos*_*shi 5 sql sql-server view
在这种观点中,我需要用我的语言数月.我试试这个:
CREATE VIEW countTask
AS
SET LANGUAGE Polish
SELECT COUNT(*), DATENAME(Month, startdate), YEAR(startdate)
FROM TBL_TASKS
GROUP BY YEAR(startdate), DATENAME(Month, startdate)
Run Code Online (Sandbox Code Playgroud)
但这不正确.你知道我怎么解决它?
您不能传递文化DATENAME,也不能SET LANGUAGE在视图中传递文化(正如 @Mike 已经提到的),但如果您使用的是 SQL Server 2012 或更高版本,则可以使用它FORMAT。就像是
SELECT FORMAT(GETDATE(), 'MMMM', 'pl-PL')
-----------
czerwiec
(1 row(s) affected)
Run Code Online (Sandbox Code Playgroud)
MMMM是完整的月份名称MMM 是缩写形式MM 是月份号M月和日)FORMAT https://msdn.microsoft.com/en-AU/library/hh213505.aspx
日期格式字符串https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx
小智 5
您不能将其放入set Language视图内。这种观点是普遍的。如果您想以波兰语查看视图的输出,请在选择之前设置语言波兰语:
SET LANGUAGE Polish
SELECT * FROM countTask
Run Code Online (Sandbox Code Playgroud)