我的桌子是这样的:
+----------------+------------+
| Date + Time |
|-----------------------------|
| 2015-09-23 | 17:20:25 |
| 2015-09-23 | 17:25:27 |
| 2015-09-24 | 06:29:27 |
-------------------------------
我只想获得时间列,我希望它以12小时格式显示。像这样:
5:20 P.M.
5:25 P.M.
6:29 A.M.
我使用了这个查询:SELECT time FROM attendance WHERE 1
答案 0 :(得分:2)
试试这个(对于MSSQL)
select CONVERT(varchar(15),Time,100) from attendance where 1
对于MYSQL
select TIME_FORMAT(Time, '%r') from attendance where 1
答案 1 :(得分:2)
在SQL Server中,您可以尝试这样:
declare @t time
set @t = '17:20:25'
select CONVERT(varchar(15),@t,100)
在MYSQL中,您可以使用DATE_FORMAT和%p说明符。像这样:
SELECT DATE_FORMAT('2015-09-24 16:21:50', '%Y-%m-%d %h:%i:%s %p')
或只是
select TIME_FORMAT('17:20:25', '%r');
答案 2 :(得分:0)
尝试使用:
DECLARE @aux NVARCHAR(8)='16:45:00'
SELECT CONVERT(VARCHAR(15),CAST(@aux AS TIME),100)
或
declare @t time
set @t = '17:20:25'
select CONVERT(varchar(15),@t,100)
结果:
5:20PM
答案 3 :(得分:0)
您也可以使用此
TIME_FORMAT(Time, '%h:%i %p')
输出: 06:40 PM