当前位置: 代码网 > it编程>数据库>MsSqlserver > sqlserver日期转换为yyyy-mm-dd”的多种方法

sqlserver日期转换为yyyy-mm-dd”的多种方法

2024年08月02日 MsSqlserver 我要评论
当涉及 SQL Server 中的日期格式转换时,有许多方法可供选择。

sqlserver日期转换为“yyyy-mm-dd”的多种方法

当涉及 sql server 中的日期格式转换时,有许多方法可供选择。这里我将列举多种方法:

方法 1: 使用convert函数

select convert(varchar, yourdatecolumn, 23) as formatteddate
from yourtable;

方法 2: 使用format函数 (sql server 2012及更高版本)

select format(yourdatecolumn, 'yyyy-mm-dd') as formatteddate
from yourtable;

方法 3: 使用cast和convert函数

select cast(convert(char(10), yourdatecolumn, 120) as varchar) as formatteddate
from yourtable;

方法 4: 使用datepart函数和字符串拼接

select 
   cast(datepart(year, yourdatecolumn) as varchar) + '-' +
   right('0' + cast(datepart(month, yourdatecolumn) as varchar), 2) + '-' +
   right('0' + cast(datepart(day, yourdatecolumn) as varchar), 2) as formatteddate
from yourtable;

方法 5: 使用concat函数和datefromparts函数 (sql server 2012及更高版本)

select concat(
    datepart(year, yourdatecolumn), 
    '-', 
    format(datepart(month, yourdatecolumn), '00'), 
    '-', 
    format(datepart(day, yourdatecolumn), '00')
) as formatteddate
from yourtable;

方法 6: 使用字符串函数

select 
   left(convert(varchar, yourdatecolumn, 120), 10) as formatteddate
from yourtable;

方法 7: 使用substring和convert函数

select 
   substring(convert(varchar, yourdatecolumn, 120), 1, 10) as formatteddate
from yourtable;

方法 8: 使用自定义函数 (udf)

首先,你可以创建一个自定义函数来执行日期格式转换:

create function dbo.formatdate (@date datetime)
returns varchar(10)
as
begin
   return convert(varchar, @date, 23)
end

然后,在查询中使用这个函数:

select dbo.formatdate(yourdatecolumn) as formatteddate
from yourtable;

方法 9: 使用sql server reporting services (ssrs)

如果你在使用 sql server reporting services (ssrs),你可以在报表中直接格式化日期字段,以显示为 “yyyy-mm-dd” 格式。

这些方法中的每一种都可以根据你的具体需求和sql server版本来选择。希望这些示例能帮助你进行日期格式转换。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com