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

请问SQL批量修改数据库语句

2014-06-10 
请教SQL批量修改数据库语句批量修改数据库语句:比如:“2013-11-25 15:41:14:335”把最后一个“:”改为“.”不知

请教SQL批量修改数据库语句
批量修改数据库语句:
比如:“2013-11-25 15:41:14:335”
把最后一个“:”改为“.”

不知道SQL语句怎么写?急用
[解决办法]


select stuff('2013-11-25 15:41:14:335',20,1,',')


------------------------
2013-11-25 15:41:14,335

(1 行受影响)

update a set 字段=stuff(字段,20,1,',') from 表 a



[解决办法]
UPDATE 表 set 字段=convert(datetime,stuff(convert(varchar(50),字段,121),20,1,'.'))

[解决办法]
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

批量修改数据库语句:
比如:“2013-11-25 15:41:14:335”
把最后一个“:”改为“.”

不知道SQL语句怎么写?急用


可能我没说太清楚吧,这个“:”的位置并不固定,因为“:”后面不一定是3位,“:”前也不一定是19个字符,因为前面的日期的月份和日有可能是1位,如“2013-1-2”


这样吗:

declare @v varchar(50)
 
set @v = '2013-11-25 15:41:14:335'
 
select reverse(stuff(REVERSE(@v),charindex(':',REVERSE(@v)),1,'.'))
/*
2013-11-25 15:41:14.335
*/



是这个意思!!!再问一下,要批量次改怎么写?我要修改的字段是“CreateTime”


可以这样试试:



update 表
set CreateTime = reverse(stuff(REVERSE(CreateTime),charindex(':',REVERSE(CreateTime)),1,'.'))


[解决办法]

update tb
set createtime=REPLACE(SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime))-1,1),':','.')

热点排行