首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL 更新时间字段有关问题

2012-04-04 
SQL 更新时间字段问题一个表tbTimesheet中有两列WorkDate和StartTime,都是时间类型,现在要把WorkDate中的

SQL 更新时间字段问题
一个表tbTimesheet中有两列WorkDate和StartTime,都是时间类型,现在要把WorkDate中的年,月,日更新到StartTime中,小时和分钟不变,求一个SQL,大家帮忙啊~~~~~

例:
tbTimesheet:
源数据:
Id WorkDate StartTime
1 2012-02-12 00:00:00.000 2012-02-16 08:00:00.000
2 2012-03-13 00:00:00.000 2012-03-16 08:00:00.000

更新后想得到:
Id WorkDate StartTime
1 2012-02-12 00:00:00.000 2012-02-12 08:00:00.000
2 2012-03-13 00:00:00.000 2012-03-13 08:00:00.000


[解决办法]

SQL code
create table tbTimesheet(Id int, WorkDate datetime, StartTime datetime)insert into tbTimesheetselect 1, '2012-02-12 00:00:00.000', '2012-02-16 08:00:00.000' union allselect 2, '2012-03-13 00:00:00.000', '2012-03-16 08:00:00.000'update tbTimesheetset StartTime=convert(varchar,WorkDate,23)+' '+convert(varchar,StartTime,108)select * from tbTimesheetId          WorkDate                StartTime----------- ----------------------- -----------------------1           2012-02-12 00:00:00.000 2012-02-12 08:00:00.0002           2012-03-13 00:00:00.000 2012-03-13 08:00:00.000(2 row(s) affected)
[解决办法]
SQL code
create table tbTimesheet(Id int,WorkDate datetime,StartTime datetime)insert into tbTimesheet values(1, '2012-02-12 00:00:00.000', '2012-02-16 08:00:00.000')insert into tbTimesheet values(2, '2012-03-13 00:00:00.000', '2012-03-16 08:00:00.000')update tbTimesheet  set StartTime = convert(varchar(10),WorkDate,120) + ' ' + convert(varchar(8),StartTime,108) select * From tbTimesheet drop table  tbTimesheet /*Id          WorkDate                                               StartTime                                              ----------- ------------------------------------------------------ ------------------------------------------------------ 1           2012-02-12 00:00:00.000                                2012-02-12 08:00:00.0002           2012-03-13 00:00:00.000                                2012-03-13 08:00:00.000(所影响的行数为 2 行)*/ 

热点排行