日期:2014-05-18 浏览次数:20711 次
select replace(replace(convert(varchar(13),字段,120),'-',''),' ','') from tb
------解决方案--------------------
declare @max as int,@n as int
set @max =1000000;--有100W条
set @n=1; --从第一条开始更新
while @n<@max
begin
update Nums set [time]=convert(varchar(100),[time],12)where n=@n--where 条件这里注意你的Id对应就OK了
set @n=@n+1
end
------解决方案--------------------
'2012040709'不是个时间,字串要保存进时间字段,估计得改字段类型
/*数据库里有一个字段是“datatime”类型
其中的格式为:2012-04-27 09:00:00.000
想要把它转换为:2012040709*/
if object_id('Table_4') is not null drop table Table_4
Create table Table_4
(
date datetime
)
insert into Table_4
Select '2012-04-27 09:00:00.000'
declare @Year varchar(10),@Month varchar(10),@Day varchar(10),@Hour varchar(10),@date datetime
Select @date=date From Table_4
set @year=substring(Convert(varchar(30),@date,120),1,4)
set @month=substring(Convert(varchar(30),@date,120),6,2)
set @day=substring(Convert(varchar(30),@date,120),9,2)
set @hour=substring(Convert(varchar(30),@date,120),12,2)
alter table Table_4 alter column [date] varchar(30)
Update Table_4 Set date=@year+@Month+@Day+@Hour
Select * From Table_4
------解决方案--------------------
写快了,更新语句应该是
update talbe
set 字段=replace(replace(replace(convert(varchar(13),字段,120),'-',''),' ',''),':','')