当前位置: 代码迷 >> Sql Server >> 数据库中有一nvarchar类型的列,里边放的是日期2007-8-1现在想取月份,如何取
  详细解决方案

数据库中有一nvarchar类型的列,里边放的是日期2007-8-1现在想取月份,如何取

热度:90   发布时间:2016-04-27 15:33:11.0
数据库中有一nvarchar类型的列,里边放的是日期2007-8-1现在想取月份,怎么取
数据库中有一nvarchar类型的列,里边放的是日期2007-8-1现在想取月份,怎么取
如果截取一段的话月份有可能是两位数,不能确定,请帮忙

------解决方案--------------------
declare @date nvarchar(10)
set @date= '2007-8-1 '
select month(@date)
------解决方案--------------------
datepart(month, '2007-8-1 ')
------解决方案--------------------
select month(cast(日期 as datetime)) 月份 from tb
------解决方案--------------------
declare @date nvarchar(10)
set @date= '2007-8-1 '

select month(cast(@date as datetime)) 月份

/*
月份
-----------
8

(所影响的行数为 1 行)
*/
------解决方案--------------------
select substring(@date,charindex( '- ',@date)+1,len(@date)-charindex( '- ',@date)-charindex( '- ',reverse(@date)))
------解决方案--------------------
楼主,,,用我这个...


declare @date nvarchar(10)
set @date= '2007-8-1 '

select DateName(month,cast(@date as datetime)) as monthColumn
  相关解决方案