MSSQL数据库时间格式化实现方法(mssql 时间格式化)

MSSQL数据库支持时间格式化功能,有很多种实现方法,它们可以很容易地灵活、方便地处理时间,而且有助于提高查询、存取、分析的效率。下面介绍了MSSQL数据库中的常用时间格式化实现方法。

### 一、MSSQL 用户定义函数(UDF)时间格式化

MSSQL数据库支持使用用户定义函数输出时间,该函数可以灵活和自由地格式化显示存储在数据库中的时间字段。下面是一个例子:

“`sql

CREATE FUNCTION dbo.Formatdate

(@date datetime ,

@format VARCHAR(20))

RETURNS VARCHAR(30) AS

BEGIN

RETURN (CONVERT(VARCHAR(30), @date, @format))

END

GO

— 调用该函数

SELECT dbo.Formatdate (GETDATE(), ‘yyyy-MM-dd’)


### 二、MSSQL FORMAT 函数格式化时间

MSSQL 数据库提供了 FORMAT 函数用于格式化时间,该函数有2个参数,第一个参数指定了要转换的时间,第二个参数指定了格式,具体格式取决于要转换成的格式类别,如:

```sql
-- 以下语句把标准时间格式 2015-04-21T22:12:10 转换成 'yyyy-MM-dd hh:mm:ss' 格式
SELECT FORMAT(CAST('2015-04-21T22:12:10' as datetime2),'yyyy-MM-dd hh:mm:ss')

-- 把标准时间格式 2015-01-27T01:25:00 转换成 'dd/MM/yyyy' 格式
SELECT FORMAT(CAST('2015-01-27T01:25:00' as datetime2),'dd/MM/yyyy')
-- 把标准时间格式 2018-06-15T19:45:00 转换成 'ddMMMyyyy' 格式
SELECT FORMAT(CAST('2018-06-15T19:45:00' as datetime2),'ddMMMyyyy')

### 三、MSSQL CONVERT 函数格式化时间

CONVERT函数也可以用来格式化时间,该函数有3个参数,第一个参数指定了要进行转换的时间类型,第二个参数指定了转化时间的格式,第三个参数就是要转换的时间,如:

“`sql

— 以下语句把标准时间格式 2018-02-15T13 the time 格式

SELECT CONVERT(VARCHAR(30),’2018-02-15T13:25:00′,20)

— 把标准时间格式 2018-02-15T19:25:00 转换成 ‘MM/dd/yyyy’ 格式

SELECT CONVERT(VARCHAR(30),’2018-02-15T19:25:00′,101)

— 把标准时间格式 2018-06-15T19:45:00 转换成 ‘dd/MM/yyyy’ 格式

SELECT CONVERT(VARCHAR(30),’2018-06-15T19:45:00′,103)


### 四、MSSQL DATENAME 函数更改时间格式

MSSQL 为时间格式设计了 DATENAME 函数,该函数有两个参数,第一个参数指定了要改变的时间类型:yy,mm,dd,mi,ss等,第二个参数指定了要改变的时间,如,:

```sql
-- 以下语句把 2010-07-05T09:30:00 转换成 '05-07-2010' 格式
SELECT CONVERT(VARCHAR(30), DATENAME(dd, '2010-07-05T09:30:00')+'-'+
DATENAME(mm, '2010-07-05T09:30:00')+'-'+
DATENAME(yy, '2010-07-05T09:30:00'),103)

-- 把 2018-01-27T01:25:00 转换成 '27/01/2018' 格式
SELECT CONVERT(VARCHAR(30), DATENAME(dd, '2018-01-27T01:25:00')+'/'+
DATENAME(mm, '2018-01-27T01:25:00')+'/'+
DATENAME(yy, '2018-01-27T01:25:00'),103)

以上介绍了MSSQL数据库中几种常用的时间格式化实现方法,这些方法可以让开发者灵活、有效地格式化显示存储在数据库中的时间字段,以提升查询、存取和分析业务效率。


数据运维技术 » MSSQL数据库时间格式化实现方法(mssql 时间格式化)