我用一个简单的例子来说明一下:
--下面是一个表:
declare @table table (id int identity(1,1),window nvarchar(max))
insert into @table (window)
select 'AAAA1111' union all
'AAA111' union all
'AA11'
* from @table
/*
id window
----------- ----------
1 AAAA1111
2 AAA111
3 AA11
*/
--假设我们要更新表的该字段的后一半变成DD
update @table
set
window.write('DD',len(window)/2,ceiling(cast(len(window) as float)/2))
* from @table
1 AAAADD
2 AAADD
3 AADD
用write一次就可以更新出现我们要的结果,当然我们也可以用别的办法。
这里只是说明一下write的用法。
注意事项:
1、write是sql server2005和sql server2008中方可使用。
2、write更新的字段要是varchar(max) 或是narchar(max)的。
@【叶子】http://blog.csdn.net/maco_wang 原创作品,转贴请注明作者和出处,留此信息。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。