在 sql 服务器中将数据和时间转换为数字
Convert data and time into a numeric number in sql server
我有一个数据和时间格式列,我想在 Microsoft SQL 服务器中将其转换为以下格式:yyyymmddhhmmss00000
例如,如果我有 2021-02-04 11:49:50
,这将被转换为 2021020411495000000
。
有人知道怎么做吗?
通过一次使用格式 112 将日期转换为 NVARCHAR,一次使用格式 8,您可以提取数字日期和没有毫秒的时间。删除 : 从那时起您可以连接这两个字符串并将它们转换为 bigint。下面举个例子:
DECLARE @d DATETIME = GETDATE()
SELECT CAST(CONVERT(NVARCHAR(8), @d, 112) + REPLACE(CONVERT(NVARCHAR(8), @d, 8), ':', '') + '00000' AS BIGINT)
您可以使用FORMAT
函数:
SELECT FORMAT(myDate, 'yyyyMMddHHmmss00000')
我有一个数据和时间格式列,我想在 Microsoft SQL 服务器中将其转换为以下格式:yyyymmddhhmmss00000
例如,如果我有 2021-02-04 11:49:50
,这将被转换为 2021020411495000000
。
有人知道怎么做吗?
通过一次使用格式 112 将日期转换为 NVARCHAR,一次使用格式 8,您可以提取数字日期和没有毫秒的时间。删除 : 从那时起您可以连接这两个字符串并将它们转换为 bigint。下面举个例子:
DECLARE @d DATETIME = GETDATE()
SELECT CAST(CONVERT(NVARCHAR(8), @d, 112) + REPLACE(CONVERT(NVARCHAR(8), @d, 8), ':', '') + '00000' AS BIGINT)
您可以使用FORMAT
函数:
SELECT FORMAT(myDate, 'yyyyMMddHHmmss00000')