mssql insert into 和insert into select性能比较

使用insert into table(field, …)select(value,…) union all
select(value,…) union all select(value,…) …的情况

select id,dbo.gettxt(id) txt from test group by id go

我一次插入的数据是:1190条。用insert
into所用的时间在510毫秒上下徘徊,而用insert into
select所用的时间在16毫秒上下徘徊。

sql字符串连接函数(mssql mysql教程 oracle)mysql字符串连接
concat函数使用方法:concat(str1,str2,)

使用insert into table(field, …)values(value, …),insert into
table(field, …)values(value, …)…的情况

mysql 向表中某字段前加字符串update table_name set
field=concat(‘str’,field)

update a set value=(substr(value, 0, 2) || ‘-‘ || substr(value, 2, 5) ||
‘-‘ ||substr(value, 8, 9));如果不是oracle 的话substr 换成substring

create function gettxt(@id int) returns varchar(8000) as begin declare
@s varchar(8000) set @s= ‘ ‘ select @s=@s + ‘; ‘ +txt from test where
id=@id –return @s return stuff(@s,1,1, ‘ ‘) end go

drop function gettxt drop table test