我有SQL Server 2014 French。
我想了解如何转换为
通常在mssql DB中我会这样做:
select Upper(replace(CONVERT(NVARCHAR, COLUMN_NAME, 106), ' ', '-'))
但是上面的查询提示我:
31-AOÛT-2017 instead of 31-AUG-2017
&安培;从DD-MON-YYYY字符串转换为YYYYMMDD:
convert(date, Column_Name, 102),'-','')
在此数据库中不起作用。
提前致谢。
答案 0 :(得分:0)
这是一个语言问题。手动设置交易语言:
SET LANGUAGE= English
SELECT Upper(replace(CONVERT(NVARCHAR, COLUMN_NAME, 106), ' ', '-'))
GO
答案 1 :(得分:0)
通常,您根据应用程序设置的首选项,让使用结果集的客户端应用程序格式化。为什么你认为开发人员应该强制使用英语而不是法语(或任何其他语言)月份名称?
但我们知道你很久以前就通过了这个决策点。您可以使用format函数执行此操作。文档here
中有一个完全相同的示例