如何使用 SQL 服务器获得正确的时间格式?

How can I have the right format of time with SQL Server?

你好我有这个专栏:

date1
6/19/2019 3:10:12 PM

我只想提取时间,所以我使用了以下查询:

select try_parse([date1] as time using 'en-US') from myTable

但问题是我得到了这个:

15:10:12.0000000

而我只想拥有这个:

15:10:12

我该如何解决这个问题?

非常感谢!

你可以试试

SELECT convert(varchar(max), try_parse('6/19/2019 3:10:12 PM' AS time USING 'en-US'), 108)
       FROM mytable;

如果您希望将结果作为字符串显示。 (但是您不应该将 date/time 存储为字符串。使用正确的数据类型。)

您可以使用 FORMAT:

SELECT FORMAT(try_parse([date1] as datetime using 'en-US'), 'HH:mm:ss') from myTable;