在我的表格中,我有myDate
列nvarchar(50)
。
我需要的结果是选择此日期/时间:07/11/2013 11:22:07
我需要从中获取07/11/2013 11:22:07 am
(将am/pm
添加到原始日期和时间)。
我尝试了所有内容,但只获取原始数据而没有上午/下午。
这是我的查询中的一个例子:
select convert(dateTime,myDate,100) as Date from Info
或
select convert(dateTime,myDate,0) as Date from Info
我错过了什么?
答案 0 :(得分:0)
您可以使用以下查询获取AM / PM数据
declare @date datetime
select @date= CAST('07/11/2013 11:22:07' AS datetime)
select RIGHT ( CONVERT(VARCHAR,@date,9),2)
答案 1 :(得分:0)
您的字段是NVARCHAR
字段,因此只需返回它而不进行任何转换。在您的查询中,您将字符串表示转换为DATETIME
类型并返回它。显示查询结果的浏览器软件将DateTime
值转换为字符串表示形式以显示给您,转换格式取决于此软件,通常您可以更改它来更改Windows区域设置。
答案 2 :(得分:0)
try this !!
declare @date datetime
set @date='07/11/2013 11:22:07'
SELECT cast(convert(varchar(20),substring(convert(nvarchar(20),@date, 9), 0, 21)
+ ' ' + substring(convert(nvarchar(30), @date, 9), 25, 2),105) as datetime)