请教一个简单的函数?在线等!谢谢! update tb set col=replace(col,'-','') 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select replace('1-090328','-','')-------1090328(1 行受影响) declare @aa varchar(20)set @aa='1-090328'select replace (@aa,'-','')----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------1090328(1 行受影响) declare @s varchar(20)set @s='1-090328'select left(replace(@s,'-',''),len(@s)-1)+'1'-----10903281(1 行受影响) declare @s varchar(20)set @s='1-090328'select replace(@s,'1-090328','1')---1(1 行受影响)? declare @t table(a varchar(20))insert @t select '1-090328' insert @t select '100-090329' insert @t select '10000-090528' --这里开始update @t set a=left(a,charindex('-',a)-1)--查询select * from @t--以下是结果a--------------------110010000(3 行受影响) 我的意思是比如表A:编号'1-090328' '100-090329' '10000-090528' 通过表A得到表B编号'1' '100' '10000' declare @t table(a varchar(20))insert @t select '1-090328' insert @t select '100-090329' insert @t select '10000-090528' --这里开始select a=left(a,charindex('-',a)-1) into B from @t--查询select * from Ba--------------------110010000(3 行受影响) SQL codeT-sql:declare @s varchar(20)set @s='10-090328'select left(ltrim(@s),charindex('-',ltrim(@s))-1) as 结果结果--------------------10(1 行受影响)使用函数:create function f_getvalue(@s varchar(100))returns @re table(col varchar(100)) asbegininsert @re values(left(ltrim(@s),charindex('-',ltrim(@s))-1)) returnendselect *from f_getvalue('10-28947jjs')col----------------------------------------------------------------------------------------------------10(1 行受影响) 使用SQL回滚,为什么提示错误? 请教一sql语句 在触发器里面的INSERTED是什么意思 求一主从表查询SQL语句 球一个查询语句 求插入语句 实例? 求救(向蚂蚁大力愉快的登山者,邹键等高手求救 关于数据库的备份,还原。 字符串的问题 关于论坛类数据库查询 求助:小弟刚学MSSqlServer,求一查询语句,在线等
-------
1090328(1 行受影响)
set @aa='1-090328'
select replace (@aa,'-','')----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1090328(1 行受影响)
declare @s varchar(20)
set @s='1-090328'
select left(replace(@s,'-',''),len(@s)-1)+'1'
-----
10903281(1 行受影响)
set @s='1-090328'
select replace(@s,'1-090328','1')
---
1(1 行受影响)?
insert @t select '1-090328'
insert @t select '100-090329'
insert @t select '10000-090528'
--这里开始
update @t set a=left(a,charindex('-',a)-1)
--查询
select * from @t
--以下是结果
a
--------------------
1
100
10000(3 行受影响)
'1-090328'
'100-090329'
'10000-090528'
通过表A得到表B
编号
'1'
'100'
'10000'
insert @t select '1-090328'
insert @t select '100-090329'
insert @t select '10000-090528'
--这里开始
select a=left(a,charindex('-',a)-1) into B from @t
--查询
select * from B
a
--------------------
1
100
10000(3 行受影响)
SQL codeT-sql:
declare @s varchar(20)
set @s='10-090328'
select left(ltrim(@s),charindex('-',ltrim(@s))-1) as 结果结果
--------------------
10(1 行受影响)使用函数:
create function f_getvalue(@s varchar(100))
returns @re table(col varchar(100))
as
begin
insert @re values(left(ltrim(@s),charindex('-',ltrim(@s))-1))
return
endselect *
from f_getvalue('10-28947jjs')
col
----------------------------------------------------------------------------------------------------
10(1 行受影响)