小编典典

有没有一种方法可以在SQL Server中使用自定义格式获取日期?

sql

在Oracle中,可以使用:

SELECT to_char(sysdate, 'yyyy-mm') FROM dual;

仅显示日期的年和月部分。此外,您可以设置NLS_DATE_FORMAT更改默认情况下返回日期的方式。

我知道在SQL Server中您可以使用一组预定义的选项

SELECT convert(varchar, getdate(), 110) 鈥�- mm-dd-yyyy
SELECT convert(varchar, getdate(), 111) 鈥�- yyyy/mm/dd

但是有没有一种选择可以给我与甲骨文一样的自由to_char呢?最好是不需要我创建自定义函数的函数。


阅读 220

收藏
2021-04-14

共1个答案

小编典典

当前最好的选择是拥有CLR函数,该函数是.NET的包装器DateTime.ToString(string format)

如果您不想使用单独的函数,则可以从片段中构建所需的字符串:

YEAR(@d) + '-' + MONTH(@d) + '-' + DAY(@d)

至于确定的解决方案,SQL Server的下一版本中将提供格式化功能

2021-04-14