数据库表   full   字段 ID, url 
原始数据表:url中的值全部都是一样的。ID        url
1         文件名.html
3         文件名.html
4         文件名.html
6         文件名.html
7         文件名.html
8         文件名.html
要得到的数据表结果ID        url
1         1.html
3         3.html
4         4.html
6         6.html
7         7.html
8         8.html意思就是把  url里的 文件名 替换成 当前行的 ID值

解决方案 »

  1.   


    select 
    ID,
    rtrim(ID)+right(url,charindex('.',reverse(url))-1)
    from 
    Tupdate T
    set url=rtrim(ID)+right(url,charindex('.',reverse(url))-1)
      

  2.   

    declare @T table(ID int,url nvarchar(10))
    insert @T select 
    1,                   '文件名.html' union all select
    3,                   '文件名.html' union all select 
    4,                   '文件名.html' union all select
    6,                   '文件名.html' union all select
    7,                   '文件名.html' union all select
    8,                   '文件名.html' update   @T 
    set   url=rtrim(ID)+right(url,charindex('.',reverse(url)))select * from @t
    (所影响的行数为 6 行)
    (所影响的行数为 6 行)ID          url        
    ----------- ---------- 
    1           1.html
    3           3.html
    4           4.html
    6           6.html
    7           7.html
    8           8.html(所影响的行数为 6 行)
      

  3.   

    查询时用:
    declare @T table(ID int,url nvarchar(10))
    insert @T select 
    1,                   '文件名.html' union all select
    3,                   '文件名.html' union all select 
    4,                   '文件名.html' union all select
    6,                   '文件名.html' union all select
    7,                   '文件名.html' union all select
    8,                   '文件名.html' select ID,rtrim(ID)+right(url,charindex('.',reverse(url))) as 显示
     from @t
      

  4.   

    如果.html是固定时:
    declare @T table(ID int,url nvarchar(10))
    insert @T select 
    1,                   '文件名.html' union all select
    3,                   '文件名.html' union all select 
    4,                   '文件名.html' union all select
    6,                   '文件名.html' union all select
    7,                   '文件名.html' union all select
    8,                   '文件名.html' update @T
    set url=rtrim(ID)+'.html'select * from @T(所影响的行数为 6 行)
    (所影响的行数为 6 行)ID          url        
    ----------- ---------- 
    1           1.html
    3           3.html
    4           4.html
    6           6.html
    7           7.html
    8           8.html(所影响的行数为 6 行)
      

  5.   


    update full set url=replace(url,'文件名',id) 
      

  6.   

    各位大哥,真不好意思,我刚才把帖子写错了。这个论坛我不太熟悉,操作失误数据库是 mysql  不是MSSQL。这里的答案都是针对MSQL。所以不能用。下面是我开的新帖子。各位不好意思的大哥回复一下吧。回答都给分。小弟在这里赔罪了。http://topic.csdn.net/u/20080127/19/d1fcaaf8-f287-42cc-8932-22b944b47150.html
      

  7.   

    update 表 set url=CONCAT(ID , RIGHT(url,5))