我有一个smalldatetime字段我正在转换为varchar(工作正常)现在我想在select查询中剪切它只返回时间而不是日期。
convert(varchar, [DTMON_F]) as mondayFrom
这将返回“2011年2月28日上午10:30”我想返回“上午10:30”
答案 0 :(得分:1)
尝试RIGHT(CONVERT(VARCHAR, [DTMON_F]), 7)
http://msdn.microsoft.com/en-us/library/ms187928%28v=SQL.105%29.aspx
答案 1 :(得分:1)
您可以使用仅包含时间部分的预定义格式样式之一,例如:
convert(varchar, [DTMON_F], 108)
convert(varchar, [DTMON_F], 114)
如果他们给你一个合适的输出。
否则,您可以通过连接各种DATEPART
函数调用的结果来创建自己的输出。
答案 2 :(得分:0)
有两种方式让人想起
select convert(varchar,[DTMON_F],8) as mondayFrom
将返回10:30:00(24小时格式)
select ltrim(right(convert(varchar,[DTMON_F]),7)) as mondayFrom
将于晚上10:30返回