Bienvenidos

Recuerda que tus comentarios son importantes y recuerda agradecer si te fue útil algun artículo publicado aquí.

L1f3 15 a D@nc3 Flo0r

miércoles, 15 de agosto de 2007

Reemplazar caracteres por otros en SQL

Para reemplazar un caracter por otro en sql server
la clausula utilizada es REPLACE

uso: REPLACE(cadena1, cadena2, cadena3)

cadena 1 = es el campo donde esta lo que queremos reemplazar
cadena 2 = es el string que queremos reemplazar
cadena 3 = es el string por el que vamos a reemplazar el anterior

ej: REPLACE('jose-benzan', '-', '@')

resultado = jose@benzan

En un query seria:

select replace(Concepto,'BALANCE PENDIENTE', 'CUENTAS POR COBRAR') from BalancePendiente

y para actualizar los valores de un campo:

update BalancePendiente
Set Concepto = replace(Concepto,'BALANCE PEDIENTE', 'CUENTAS POR COBRAR')

16 comentarios:

Anónimo dijo...

olle tu eres un montro con tus tips que has puesto en la pagina me has ayudado a resoler pila de programas que tenia atrasado, gracias por tus consejos que son muy productivos.

Anónimo dijo...

orale, muchisimas gracias, son las 5AM y me disponia a hacer un programa para cambiar miles de registros, no sabia que existia esa funcion, tenia que entregar resultados a las 8AM, no sabes el tiempo que me has ahorrado con uno de tus tips, de nuevo muchas gracias

Anónimo dijo...

Gracias brother, te pasaste y yo k me mataba cambiando tilde x tilde mis 12 mil registros XD...

gracias pata, sigue asi, seguire visitando tu pagina, salu2

Anónimo dijo...

Muchisimas gracias por tu post, me ha venido de maravilla.
Una cerveza virtual para ti...

alegc85_1 dijo...

WOW... Me acabas de salvar de hacer un script de update... de 1000 registros

alegc85_1 dijo...

Muchisimas gracias.... me acabas de salvar de hacer un update a 1000 registros jajajaja con este ahorre muuuucho tiempo!

RICARDOSOFT dijo...

hola bro a mi me pasa que quiero hacer un update asi :
update status_liquidacion set info = info+"antiguo";
no se si se entiende lo que quiero es solo agregarle una cadena al campo "info" que diga antiguo , no eliminar el registro y poner otro sino solo concatenarle un dato mas al registro pero no consigo como hacerlo

Eduardo González dijo...

Muy util la información, muchas gracias!!

Sacros dijo...

para agregar la cadena seria
update status_liquidacion set info = trim(info)||"antiguo";

es tarde pero alguno le ha de servir.

Anónimo dijo...

Gracia por el TIP, tambien me sacó de un problema, agradecido !!!

DarkteK dijo...

Buenisimo, muchas gacias por este tip :D

Unknown dijo...

Saludos

Funcionaria?

update tickets_en set TCK_NUM = trim(13)||"BF13"; where tck_id in (
'8512039',
'8512040',
'8512041'
)

tengo registros tck_num por ejemplo 1395826585971, y en algunos casos estan duplicados, todos comienzan con 13, la condicion seria sobre tck_id el cual es unico por cada registro

lo que quiero es agregar un prefijo BF a tck_num cuando el Tck_id sea una lista de varios..

actualmente hago uno por uno asi:

update tickets_en set TCK_NUM = 'BF1392187319005' where tck_id = 8523070


Agradezco sus comentarios y ayuda.

Gracias

Blog de Tips Rápidos de Programación dijo...

Lo primero que debes hacer es un backup de la data y probar en el backup

pero si lo que quieres es agregar un prefijo a algunas entradas entonces pienso que lo que puedes hacer es

update tickets_en
set TCK_NUM = 'BF13' + CONVERT(VARCHAR,TCK_NUM)
where tck_id in (
'8512039',
'8512040',
'8512041'
)

Eso le agregaria el prefijo BF13 delante de esos registros

Unknown dijo...

Hola amigo, muy bueno tus aportes. Por favor nesecito tu ayuda: lo que deseo es poder reemplazar carateres por valores numericos en un amplio texto.
Digamos que tengo un archivo con 500 paginas y que busque y reemplace todas las letras del abecedario (a,b,c,d.....) por numeros(1.2.3.....); o los valores que yo le de; luego de eso que sume todo los valores encontrados por cada palabra reemplazada.
Te agradeceria mucho si me ayudaras.....mi correo es jcmoriano@gmail.com

pit dijo...

mil gracias me sirvio, saludos desde Guatemala.

Anónimo dijo...

Gracias hermano, me sirvio par corregir 40000 registro en 2 minutos.

saludos;