如何将 'HH:mm' 中的 varchar 列构造为 SQL 服务器中的日期时间格式?
How to construct a varchar column in 'HH:mm' to datetime format in SQL Server?
我有一个 table Bus
,在 table 中有一列 busStopTime
作为 varchar 字段,它以 'HH:mm'
格式保存时间。我正在尝试将其转换为日期时间,以便与其他日期时间字段进行比较。
但是我无法转换它。
示例:
BUS
busName route busStopTime busStartTime tripNumber
----------------------------------------------------------
690 ABC 03:30 04:30 1
690 ABC 05:30 06:30 2
690 ABC 07:30 08:30 3
这里我有三行作为示例,具有相同的 busNames 但不同 timings.I 想在给定时间(在 DD-MM-YYYY HH:mm:ss:SSS 中编写查询)我可以知道使用 busStopTime 和 busStartime 列的特定时间的行程编号。
我没有其他代码可以分享,但希望我能得到一些关于如何使用 SQL 查询转换它的线索?
在java中,使用JDBC,获取字符串值并解析为一个LocalTime
(在Java8中添加),其中有方法方便比较到其他 LocalTime
对象,并用于操作时间值,例如再加上 15 分钟。
LocalTime time = LocalTime.parse(rs.getString("busStopTime"));
如果使用 Java 6 或 7,请使用 ThreeTen Backport 库。
您可以使用加法创建 datetime
。对于当前日期的时间:
select (convert(datetime, convert(date, getdate())) +
convert(datetime, busStartTime)
) today_busStartTime
我有一个 table Bus
,在 table 中有一列 busStopTime
作为 varchar 字段,它以 'HH:mm'
格式保存时间。我正在尝试将其转换为日期时间,以便与其他日期时间字段进行比较。
但是我无法转换它。
示例:
BUS
busName route busStopTime busStartTime tripNumber
----------------------------------------------------------
690 ABC 03:30 04:30 1
690 ABC 05:30 06:30 2
690 ABC 07:30 08:30 3
这里我有三行作为示例,具有相同的 busNames 但不同 timings.I 想在给定时间(在 DD-MM-YYYY HH:mm:ss:SSS 中编写查询)我可以知道使用 busStopTime 和 busStartime 列的特定时间的行程编号。
我没有其他代码可以分享,但希望我能得到一些关于如何使用 SQL 查询转换它的线索?
在java中,使用JDBC,获取字符串值并解析为一个LocalTime
(在Java8中添加),其中有方法方便比较到其他 LocalTime
对象,并用于操作时间值,例如再加上 15 分钟。
LocalTime time = LocalTime.parse(rs.getString("busStopTime"));
如果使用 Java 6 或 7,请使用 ThreeTen Backport 库。
您可以使用加法创建 datetime
。对于当前日期的时间:
select (convert(datetime, convert(date, getdate())) +
convert(datetime, busStartTime)
) today_busStartTime