gpt4 book ai didi

sql-server - SQL将int转换为时间

转载 作者:行者123 更新时间:2023-12-03 19:38:11 26 4
gpt4 key购买 nike

我有一个将时间显示为整数的数据库。但是,我想将其输出到格式正确的报告中。这是我想更改的格式:

例如。

  • 183000会变成18:30
  • 500会变成00:05
  • 160000会变成16:00

  • 等等。

    我已经看过了 CAST 和 CONVERT 但没有成功地以正确的格式获得这个时间。

    最佳答案

    假设您的输入始终是 int,您可以使用以下内容解析它:

    DECLARE @stringTime varchar(6)

    SET @stringTime = RIGHT('000000' + CAST(intTime AS VARCHAR), 6)

    SELECT CAST(LEFT(@stringTime, 2) + ':' + RIGHT(LEFT(@stringTime, 4), 2) AS TIME) as TimeValue

    我绝对希望将此字段更改为实际时间或日期时间字段,因为不建议进行这种级别的转换,尤其是对于频繁使用的数据库。确实必须有一种更好的方式来存储您的数据。

    以这种方式使用 int 值会产生大量错误数据,而不会对您的输入添加大量额外检查和/或约束(即:260000、127900 等)

    关于sql-server - SQL将int转换为时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3718880/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com