关于时间字段如何提取年月日放入新的字段中的问题 最近在做一个数据的处理,某个时间字段的格式是 16/Mar/2008:00:03:54希望能做只提取年:2008,月:Mar,日:16 分别放入这个表中的三个新的字段里,不知如何处理?谢谢前辈们! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 --添加另外3个字段为计算列即可。假设日期字段为DDalter table TB add year as(year(DD))goalter table TB add month as(month(DD))goalter table TB add dayas(day(DD))go alter table TB add day as(day(DD)) --手误,更正一下go 用SUBSTRING()这个函数update 表 set 年列 = SUBSTRING('16/Mar/2008:00:03:54',8,4), 月列=SUBSTRING('16/Mar/2008:00:03:54',4,3), 日列=SUBSTRING('16/Mar/2008:00:03:54',1,2), --参考DECLARE @tb table(dd datetime,YEAR AS(YEAR(dd)),month AS(month(dd)),day AS(day(dd)))INSERT INTO @tb(dd)SELECT GETDATE()UNION ALLSELECT DATEADD(dd,1,GETDATE())UNION ALLSELECT DATEADD(mm,1,GETDATE())UNION ALLSELECT DATEADD(yy,1,GETDATE())SELECT * FROM @tb/*dd YEAR month day2012-08-31 16:11:02.947 2012 8 312012-09-01 16:11:02.947 2012 9 12012-09-30 16:11:02.947 2012 9 302013-08-31 16:11:02.947 2013 8 31*/ sql查询横向显示并要列汇总 表的关联操作与触发器有什么不同? ******SQL语句生成1000条数据的时遇到的问题,请高手看看(第一个答对的给分)$$$$$$$ 数据库转换的问题~SQL--ACCESSS 如何定时导入Excel文件的数据 菜鸟问:如何查看DSN名是什么? 急!传入整型“列表”参数到存储过程IN语句中的解决办法??? 如何确定sql server 哪些操作吃内存 c#应用sql表的问题 如何知道一行记录实际存储的大小? 存储过程使用OPENROWSET 将数据导入到ACCESS数据库时参数的问题 怎样在视图中生成mingcheng列中汉字的拼音首字母?
go
alter table TB add month as(month(DD))
go
alter table TB add dayas(day(DD))
go
go
update 表 set 年列 = SUBSTRING('16/Mar/2008:00:03:54',8,4),
月列=SUBSTRING('16/Mar/2008:00:03:54',4,3),
日列=SUBSTRING('16/Mar/2008:00:03:54',1,2),
--参考
DECLARE @tb table(dd datetime,YEAR AS(YEAR(dd)),month AS(month(dd)),day AS(day(dd)))INSERT INTO @tb(dd)
SELECT GETDATE()
UNION ALL
SELECT DATEADD(dd,1,GETDATE())
UNION ALL
SELECT DATEADD(mm,1,GETDATE())
UNION ALL
SELECT DATEADD(yy,1,GETDATE())
SELECT * FROM @tb
/*
dd YEAR month day
2012-08-31 16:11:02.947 2012 8 31
2012-09-01 16:11:02.947 2012 9 1
2012-09-30 16:11:02.947 2012 9 30
2013-08-31 16:11:02.947 2013 8 31*/