使用 SQL Server 将 24 小时时间字符串转换为 DateTime

发布于 2024-12-11 23:25:35 字数 181 浏览 0 评论 0原文

我有一个包含“timefrom”列和“timeto”列的表,以 24 小时格式存储时间(“09:30”、“23:15”等)。

如何选择当前日期(我认为是 CURRENT_TIMESTAMP)介于“timefrom”和“timeto”之间的行?

编辑:SQL Server 2008

I have a table with a 'timefrom' column and a 'timeto' column that stores times in 24-hour format ("09:30", "23:15", etc).

How do I select rows where the current date (CURRENT_TIMESTAMP I would think) is between 'timefrom' and 'timeto'?

edit: SQL Server 2008

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

迷爱 2024-12-18 23:25:35

SQL Server 2008+

WHERE
    CONVERT(time, CURRENT_TIMESTAMP)
        BETWEEN
             CONVERT (time, timefrom + ':00', 108)
             AND
             CONVERT (time, timeto + ':00', 108)

您当然可以修复您的设计以避免使用 time 列进行转换

SQL Server 2008+

WHERE
    CONVERT(time, CURRENT_TIMESTAMP)
        BETWEEN
             CONVERT (time, timefrom + ':00', 108)
             AND
             CONVERT (time, timeto + ':00', 108)

You could of course fix your design to avoid conversion by using a time column

无法回应 2024-12-18 23:25:35

试试这个:)

DECLARE @24Hour TIME
SET @24Hour = '17:13'
SELECT  CONVERT(VARCHAR(15), @24Hour, 100) AS '12Hour'

Try this :)

DECLARE @24Hour TIME
SET @24Hour = '17:13'
SELECT  CONVERT(VARCHAR(15), @24Hour, 100) AS '12Hour'
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文