首页 >数据库 >mysql教程 >如何在 SQL Server 2008 中将整数转换为 HH:MM:SS:00 时间格式?

如何在 SQL Server 2008 中将整数转换为 HH:MM:SS:00 时间格式?

Mary-Kate Olsen
Mary-Kate Olsen原创
2025-01-04 11:55:40777浏览

How to Convert Integers to HH:MM:SS:00 Time Format in SQL Server 2008?

在 SQL Server 2008 中将整数转换为时间格式

问题:

在 SQL Server 中2008年,我需要将表示时间的整数转换为HH:MM:SS::00 格式。另外,我想澄清格式中的“00”是否表示毫秒。

答案:

要将整数时间转换为所需的格式,您可以使用以下步骤:

  1. 提取时间:将整数除以 1000000,取余数除以 100,得到小时数。
  2. 提取分钟: 将整数除以 10000,取余数除以 100,得到数字分钟。
  3. 摘录秒:将整数除以 100 并取余数除以 100,得到秒数。
  4. 提取毫秒:将整数除以 100 的余数乘以 10 .

格式中的‘00’确实代表毫秒。

示例和结果:

示例1:

declare @T int = 23421155;

select (@T / 1000000) % 100 as hour,
       (@T / 10000) % 100 as minute,
       (@T / 100) % 100 as second,
       (@T % 100) * 10 as millisecond;

结果:

hour        minute      second      millisecond
----------- ----------- ----------- -----------
23          42          11          55

示例2:

declare @T int = 421151;

select dateadd(hour, (@T / 1000000) % 100,
       dateadd(minute, (@T / 10000) % 100,
       dateadd(second, (@T / 100) % 100,
       dateadd(millisecond, (@T % 100) * 10, cast('00:00:00' as time(2))))));

结果:

10:45:58.36

以上是如何在 SQL Server 2008 中将整数转换为 HH:MM:SS:00 时间格式?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn