比如:“2013-11-25 15:41:14 :335”
把最后一个“:”改为“.”
不知道SQL语句怎么写?急用
17 个解决方案
#1
declare @v varchar(50)
set @v = '2013-11-25 15:41:14:335'
select left(@v,19)+'.'+right(@v,3)
/*
2013-11-25 15:41:14.335
*/
#2
DECLARE @a DATETIME
SET @a='2013-11-25 15:41:14:335'
SELECT REPLACE(SUBSTRING(REVERSE(@a),PATINDEX('%:%',REVERSE(@a))-1,1),':','.')
SELECT @a
/*
-----------------------
2013-11-25 15:41:14.337
*/
#3
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
#4
UPDATE 表 set 字段=convert(datetime,stuff(convert(varchar(50),字段,121),20,1,'.'))
#5
我支持1楼,代码简洁。
#6
可能我没说太清楚吧,这个“:”的位置并不固定,因为“:”后面不一定是3位,“:”前也不一定是19个字符,因为前面的日期的月份和日有可能是1位,如“2013-1-2”
#7
2楼我的代码不需要这种判断
#8
思路是:获取最后一个:然后替换
#9
批量修改数据库语句:
比如:“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
*/
#10
学习了 引用下
#11
批量修改数据库语句:
比如:“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”
#12
批量修改数据库语句:
比如:“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,'.'))
#13
update tb
set createtime=REPLACE(SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime))-1,1),':','.')
#14
为何无视我
#15
update tb
set createtime=REPLACE(SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime))-1,1),':','.')
哥哥~~这个返回的是
2、4、3、3、........等一些列阿拉伯数字~~~~
#16
update tb
set createtime=REPLACE(SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime))-1,1),':','.')
哥哥~~这个返回的是
2、4、3、3、........等一些列阿拉伯数字~~~~
对了,这个CreateTime是什么数据类型,datetime型,还是varchar型的
#17
CREATE TABLE #t (createtime VARCHAR(40))
INSERT INTO #t
( createtime )
VALUES ( '2013-11-25 15:41:14:335' -- createtime - datetime
)
SELECT *--,REVERSE(REPLACE(REVERSE(createtime),SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime)),1),'.') )
FROM #t
go
update #t
set createtime=REVERSE(REPLACE(REVERSE(createtime),SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime)),1),'.') )
SELECT * FROM #t
DROP TABLE #T
/*
createtime
----------------------------------------
2013-11-25 15:41:14:335
(1 row(s) affected)
(1 row(s) affected)
createtime
----------------------------------------
2013-11-25 15.41.14.335
*/
#1
declare @v varchar(50)
set @v = '2013-11-25 15:41:14:335'
select left(@v,19)+'.'+right(@v,3)
/*
2013-11-25 15:41:14.335
*/
#2
DECLARE @a DATETIME
SET @a='2013-11-25 15:41:14:335'
SELECT REPLACE(SUBSTRING(REVERSE(@a),PATINDEX('%:%',REVERSE(@a))-1,1),':','.')
SELECT @a
/*
-----------------------
2013-11-25 15:41:14.337
*/
#3
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
#4
UPDATE 表 set 字段=convert(datetime,stuff(convert(varchar(50),字段,121),20,1,'.'))
#5
我支持1楼,代码简洁。
#6
批量修改数据库语句:
比如:“2013-11-25 15:41:14 :335”
把最后一个“:”改为“.”
不知道SQL语句怎么写?急用
可能我没说太清楚吧,这个“:”的位置并不固定,因为“:”后面不一定是3位,“:”前也不一定是19个字符,因为前面的日期的月份和日有可能是1位,如“2013-1-2”
#7
批量修改数据库语句:
比如:“2013-11-25 15:41:14 :335”
把最后一个“:”改为“.”
不知道SQL语句怎么写?急用
可能我没说太清楚吧,这个“:”的位置并不固定,因为“:”后面不一定是3位,“:”前也不一定是19个字符,因为前面的日期的月份和日有可能是1位,如“2013-1-2”
#8
思路是:获取最后一个:然后替换
#9
批量修改数据库语句:
比如:“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
*/
#10
学习了 引用下
#11
批量修改数据库语句:
比如:“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”
#12
批量修改数据库语句:
比如:“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,'.'))
#13
update tb
set createtime=REPLACE(SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime))-1,1),':','.')
#14
为何无视我
#15
update tb
set createtime=REPLACE(SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime))-1,1),':','.')
哥哥~~这个返回的是
2、4、3、3、........等一些列阿拉伯数字~~~~
#16
update tb
set createtime=REPLACE(SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime))-1,1),':','.')
哥哥~~这个返回的是
2、4、3、3、........等一些列阿拉伯数字~~~~
对了,这个CreateTime是什么数据类型,datetime型,还是varchar型的
#17
CREATE TABLE #t (createtime VARCHAR(40))
INSERT INTO #t
( createtime )
VALUES ( '2013-11-25 15:41:14:335' -- createtime - datetime
)
SELECT *--,REVERSE(REPLACE(REVERSE(createtime),SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime)),1),'.') )
FROM #t
go
update #t
set createtime=REVERSE(REPLACE(REVERSE(createtime),SUBSTRING(REVERSE(createtime),PATINDEX('%:%',REVERSE(createtime)),1),'.') )
SELECT * FROM #t
DROP TABLE #T
/*
createtime
----------------------------------------
2013-11-25 15:41:14:335
(1 row(s) affected)
(1 row(s) affected)
createtime
----------------------------------------
2013-11-25 15.41.14.335
*/