数据库中有一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