在这种观点中,我需要用我的语言数月。我试试这个:
CREATE VIEW countTask
AS
SET LANGUAGE Polish
SELECT COUNT(*), DATENAME(Month, startdate), YEAR(startdate)
FROM TBL_TASKS
GROUP BY YEAR(startdate), DATENAME(Month, startdate)
但这不正确。你知道我怎么解决它?
答案 0 :(得分:3)
您无法将set Language
放入视图中。这种观点是普遍的。如果您想在波兰语中查看视图的输出,请在选择之前设置语言波兰语:
SET LANGUAGE Polish
SELECT * FROM countTask
答案 1 :(得分:3)
您无法将文化传递给DATENAME
,并且您无法在视图中SET LANGUAGE
(如@Mike已经提到的那样),但如果您使用的是SQL Server 2012或更高版本,则可以请改用FORMAT
。像
SELECT FORMAT(GETDATE(), 'MMMM', 'pl-PL')
-----------
czerwiec
(1 row(s) affected)
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