急,一个MM问我的题,我想不出来,大家来帮帮忙!
班上一个同学问我一个数据库方面的题目,就是如何或得一个DATATIME类型的字段的年和月,这个自段是数据库自动获取的日期(用getdate()),比如一条记录里这个字段的值是:2007-05-01 现在我要用条查询语句获得 2007-05 我用 select left(date,10) from tb_sell 可是得出的结果是:05 1 2007 ,郁闷!我告诉她直接在后台里就可以截取,可她偏要在数据库里用一条查询语句!我想应该也不是很难的,就是想不起该用哪个函数,各位高手帮帮我吧!否则交不了差!
------解决方案--------------------.ToString( "xxx-xx-xx ")
------解决方案--------------------year(getdate())+ '- '+month(getdate())
------解决方案--------------------如果硬要这么做,只有用最傻的办法啦,英雄难过美人关啊!
select substring(cast(date as varchar),7,4)+ '- '+substring(cast(date as varchar),5,2)as data from 表名
------解决方案--------------------select substring(cast(date as varchar),7,4)+ '- '+substring(cast(date as varchar),5,2)as data from 表名
可行..
------解决方案--------------------转换成 varchar 再截取 或者 拼接 year 和 month 不足位补0
------解决方案--------------------conver(nvarchar(7),date ,20)
------解决方案--------------------conver(nvarchar(7),date ,20)
------解决方案--------------------select cast(year(字段) as varchar)+ '- '+cast(month(字段) as varchar) from table
------解决方案--------------------+号运算术,可用于两个数的相加和字条串的相连,而把日期只能年或者月的时候,比如:200-05-01,取的年是INT型,所以将其转化为nvarchar然后用+相连就是你想要的结果了
还有如果不想这样做,还可以在绑定的时候只取年月
{0:yyyymm}
------解决方案--------------------select year(getdate())+ '- 'month(getdate()) as Time
from table
------解决方案--------------------?
select year(getdate())+ '- 'month(getdate()) as Time
from table
------解决方案--------------------year(getdate())+ '- '+month(getdate())
接分.