问高手一个有难度的查询在一个数据库中有一个表存有数万篇文章,字段content为文章内容所在字段,打开表看不到文章内容“long----”
问题:
1、把每一篇文章的
“网站”换为“电子商务网站”
“学校”换为“北京大学”
“学生”换为“本科生”
特别之处时:要求每篇文章中间同一内容只替换一次,也即只替换一处。例如某篇文章有多处“学校”,但要求只替换一处。2、在每篇文章第三段的结尾处加上一个“中国考网.cn”的链接。
问题:
1、把每一篇文章的
“网站”换为“电子商务网站”
“学校”换为“北京大学”
“学生”换为“本科生”
特别之处时:要求每篇文章中间同一内容只替换一次,也即只替换一处。例如某篇文章有多处“学校”,但要求只替换一处。2、在每篇文章第三段的结尾处加上一个“中国考网.cn”的链接。
呵呵,是TEXT字段这样的字段是不能使用UPDATE的,只能额外写程序循环记录,在程序中进行更改
楼主没有有求是第几次出现,那自然是不论第几次都行,这个类型的字段是可以update的,只是如果要求替换一次,倒还请高手了。
TRUNCATE TABLE t1
EXEC sp_tableoption 't1', 'text in row', 'on'
INSERT t1 VALUES ('1','要搜索的行如果未通过WHERE子句限制要搜索的行通过询将返回表中的所有行对在其中找到该模式的所有行报告非零值,对在其中未找到该模式的所有行报告零值。')
GO
BEGIN TRAN
DECLARE @ptrval VARBINARY(16),@find int
SELECT @ptrval = TEXTPTR(c2),@find=PATINDEX('%通过%', c2)
FROM t1
WHERE c1 = 1
set @find=@find-1
UPDATETEXT t1.c2 @ptrval @find 2 '经过'
READTEXT t1.c2 @ptrval 0 60
COMMIT要搜索的行如果未经过WHERE子句限制要搜索的行通过询将返回表中的所有行对在其中找到该模式的所有行报告非零值,对在其中未