2012-04-26 126 views
0

他們是我行替換一個詞(它出現兩次)我需要替換最後一個。 SQL

Número Total de Clientes 
Número Total de Clientes de 
Número Total de Líquidos que se Consumen en el Hogar a la Semana 
Número Total de Líquidos que se Consumen en el Hogar a la Semana de 
Número Total de garrafones de 
Número Total de garrafones en el mercado 
Númeto Total de garrafones de 
Porcentaje Clientes que Compran por Calidad 
Porcentaje Clientes que Compran por Disponibilidad 
Porcentaje Clientesque Compran por Otros Motivos 
Porcentaje Clientesque Compran por Precio 
Porcentaje Total de garrafones de 
Porcentaje de Clientes 
Porcentaje de Clientes xxxx que Compran en la Ruta Hogar 
Porcentaje de Clientes de 
Porcentaje de Participación de Ventas de 
Porcentaje de garrafones de 

我的表名爲#ope_censo_indicador

,你可以看到我有那些

Número Total de Clientes 
Número Total de Clientes de 

我需要它是 NÚMERO總去Clientes馬卡報

但我得到了 Número全部de Clientes Núme RO總marcaClientes馬卡報

與此查詢

update #ope_censo_indicador set ope_indicadoridname=(replace(ope_indicadoridname,'%de','%marca')) 
where ope_indicadoridname like '% de' 

這些太

Número Total de Líquidos que se Consumen en el Hogar a la Semana 
Número Total de Líquidos que se Consumen en el Hogar a la Semana de 

我需要它返回

Número Total de Líquidos que se Consumen en el Hogar a la Semana 
Número Total de Líquidos que se Consumen en el Hogar a la Semana marca 

這也

Porcentaje de Clientes Porcentaje de Clientes Cristal que Compran en 
la Ruta Hogar Porcentaje de Clientes de 

我需要返回

Porcentaje de Clientes Porcentaje de Clientes Cristal que Compran en 
la Ruta Hogar Porcentaje de Clientes marca 

(我有更多的,但它會很好,我有一個查詢得到了它)

後,我一定會成功。

Número Total de Clientes 
Número Total de Clientes marca 
Número Total de Líquidos que se Consumen en el Hogar a la Semana 
Número Total de Líquidos que se Consumen en el Hogar a la Semana marca 
Número Total de garrafones marca 
Número Total de garrafones en el mercado 
Porcentaje Clientes que Compran por Calidad 
Porcentaje Clientes que Compran por Disponibilidad 
Porcentaje Clientesque Compran por Otros Motivos 
Porcentaje Clientesque Compran por Precio 
Porcentaje Total de garrafones marca 
Porcentaje de Clientes 
Porcentaje de Clientes xxxx que Compran en la Ruta Hogar 
Porcentaje de Clientes marca 
Porcentaje de Participación de Ventas marca 
Porcentaje de garrafones marca 

我要去想刪除這些(或者做一個查詢有不同,但我需要回到這個:)

Número Total de Clientes marca 
Número Total de Líquidos que se Consumen en el Hogar a la Semana marca 
Número Total de garrafones marca 
Número Total de garrafones en el mercado 
Porcentaje Clientes que Compran por Calidad 
Porcentaje Clientes que Compran por Disponibilidad 
Porcentaje Clientesque Compran por Otros Motivos 
Porcentaje Clientesque Compran por Precio 
Porcentaje Total de garrafones marca 
Porcentaje de Clientes xxxx que Compran en la Ruta Hogar 
Porcentaje de Clientes marca 
Porcentaje de Participación de Ventas marca 
Porcentaje de garrafones marca 



enter code here 

回答

0

這是非常棘手!我假設你基本上是說你想用「marca」取代LAST「de」,但是隻有當它是最後一個單詞。如果它在中間,你希望保持獨立。

如果這是正確的,這個代碼處理:

-- Setup a temp table with "bigstring" as your text and "lastpos" as the location of LAST "de" 
DECLARE @tmp1 TABLE (bigstring varchar(1000), lastpos int) 
INSERT INTO @tmp1 (bigstring) VALUES ('Número Total de Líquidos que se Consumen en el Hogar a la Semana') 
INSERT INTO @tmp1 (bigstring) VALUES ('Número Total de Líquidos que se Consumen en el Hogar a la Semana de') 
INSERT INTO @tmp1 (bigstring) VALUES ('Leave this de one alone') 

    -- Ensure we don't have any trailing spaces 
    UPDATE @tmp1 SET bigstring = RTRIM(bigstring) 

    -- If the string ENDS in ' de' then record the starting position of that word 
    UPDATE @tmp1 SET lastpos = LEN(bigstring)-2 WHERE RIGHT(bigstring,3) = ' de' 

    -- Here is how our table looks now 
    SELECT * from @tmp1 

    -- Now, if LASTPOS is not null, we want everything to the LEFT of that + 'marca' 
    UPDATE @tmp1 SET bigstring = SUBSTRING(bigstring, 1, lastpos) + 'marca' WHERE lastpos IS NOT NULL 

    -- Done! 
    SELECT * from @tmp1 

你的第一個字符串被單獨留在家中,第二個有最後的「德」與「馬卡報」和一個我擺在那裏替代(用「德」在中間)被單獨留下。

我希望有幫助!