SQL中的日期转换

 select CONVERT(varchar, getdate(), 120 )
2004-09-12 11:06:08

select CONVERT(VARCHAR(10), getDate(),120)
2004-09-12

select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),/'-/',/'/'),/' /',/'/'),/':/',/'/')
20040912110608

select CONVERT(varchar(12) , getdate(), 111 )
2004/09/12

select CONVERT(varchar(12) , getdate(), 112 )
20040912

select CONVERT(varchar(12) , getdate(), 102 )
2004.09.12

select CONVERT(varchar(12) , getdate(), 101 )
09/12/2004

select CONVERT(varchar(12) , getdate(), 103 )
12/09/2004

select CONVERT(varchar(12) , getdate(), 104 )
12.09.2004

select CONVERT(varchar(12) , getdate(), 105 )
12-09-2004

select CONVERT(varchar(12) , getdate(), 106 )
12 09 2004

select CONVERT(varchar(12) , getdate(), 107 )
09 12, 2004

select CONVERT(varchar(12) , getdate(), 108 )
11:06:08

select CONVERT(varchar(12) , getdate(), 109 )
09 12 2004 1

select CONVERT(varchar(12) , getdate(), 110 )
09-12-2004

select CONVERT(varchar(12) , getdate(), 113 )
12 09 2004 1

select CONVERT(varchar(12) , getdate(), 114 )
11:06:08.177


getDate()可以换成你在数据库中的 DateTime 类型的字段



### SQL 日期格式化与转换方法 在 SQL 中,日期格式的转换是常见的操作,尤其在处理时间相关的字段时。不同的数据库系统支持的函数略有不同,但大多数都提供了 `CONVERT` 或 `FORMAT` 类型的函数来实现日期格式的转换。 #### 使用 CONVERT 函数进行格式化 `CONVERT` 是 SQL Server 和 MySQL 中常用的日期格式转换函数,其语法为: ```sql SELECT CONVERT(data_type, expression, style) ``` 其中,`style` 参数决定了输出的日期格式。例如: ```sql SELECT CONVERT(GETDATE(), 23) -- 输出格式为 YYYY-MM-DD [^1] SELECT CONVERT(GETDATE(), 8) -- 输出格式为 HH:MM:SS [^1] ``` 上述示例展示了如何将当前日期格式化为“年--日”和“时:分:秒”的形式。 在 MySQL 中,可以使用类似的语法: ```sql SELECT CONVERT(NOW(), DATE); -- 输出仅包含日期部分 SELECT CONVERT(NOW(), TIME); -- 输出仅包含时间部分 ``` #### 使用 FORMAT 函数(适用于 SQL Server 2012+ 和 MySQL) `FORMAT` 函数提供更灵活的格式化方式,允许自定义日期格式字符串。例如: ```sql SELECT FORMAT(GETDATE(), 'yyyy-MM-dd') -- 输出格式为 YYYY-MM-DD SELECT FORMAT(GETDATE(), 'HH:mm:ss') -- 输出格式为 HH:MM:SS ``` MySQL 中也支持类似语法: ```sql SELECT DATE_FORMAT(NOW(), '%Y-%m-%d') -- 输出格式为 YYYY-MM-DD SELECT DATE_FORMAT(NOW(), '%H:%i:%s') -- 输出格式为 HH:MM:SS ``` #### 处理带有时区的日期格式 对于涉及时区的日期处理,SQL Server 提供了 `AT TIME ZONE` 子句,用于将日期从一个时区转换到另一个时区,并结合 `CONVERT` 或 `FORMAT` 进行格式化: ```sql SELECT CONVERT(DATETIMEOFFSET, GETDATE()) AT TIME ZONE 'Pacific Standard Time' ``` 这将返回当前日期时间并附加时区信息,之后可进一步格式化输出。 #### 日期格式转换中的常见样式代码 以下是一些常用的样式代码及其对应的日期格式: | 样式代码 | 输出格式 | |----------|----------------| | 23 | yyyy-mm-dd | | 8 | hh:mi:ss | | 112 | yyyymmdd | | 14 | hh:mi:ss:mmm | 这些样式代码可以在 `CONVERT` 函数中直接使用,以满足不同的日期格式需求。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值