eliminar valores

08/08/2005 - 23:34 por Erick Sanchez | Informe spam
Estoy intentando eliminar letras de cadenas de caracteres que contienen
nombres son en realidad casi 1000 filas las que hay que modificar. para
eliminar un valor x estoy utilizando la funcion charindex de esta forma

update table1
set col1=substring(col1,1,charindex('char',col1)-1)
si fuera un solo dato me funciona pero como les dije son casi 1000 registros
.

Existe alguna funcion de caracteres que me permita eliminar mas de un
registro

gracias

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
09/08/2005 - 15:03 | Informe spam
Erick,

A que te refieres cuando mencionas "registros", a filas en la tabla o a
ocurrencias de otros caracteres en el valor almacenado en la columna?

Si expones un ejemplo, prodriamos tratar de dar una solucion.

AMB

"Erick Sanchez" wrote:


Estoy intentando eliminar letras de cadenas de caracteres que contienen
nombres son en realidad casi 1000 filas las que hay que modificar. para
eliminar un valor x estoy utilizando la funcion charindex de esta forma

update table1
set col1=substring(col1,1,charindex('char',col1)-1)
si fuera un solo dato me funciona pero como les dije son casi 1000 registros
..

Existe alguna funcion de caracteres que me permita eliminar mas de un
registro

gracias




Respuesta Responder a este mensaje
#2 Erick Sanchez
09/08/2005 - 15:47 | Informe spam
Me refiero a filas

son 100 distintos nombres almacenados en una tabla

ejemplo
luis
erick
eduardo
miguelc
manxuel
albat
ric~ard?

asi esta lo que pasa como ves algunos caracteres extraños y tengo que
eliminarlos, intente con Charindex como dije anteriormente y no funciono me
manda un error cuando trato de modificar varias lineas para un solo valor
funciona. Meti la funcion en un cursor y pasa lo mismo.

"Alejandro Mesa" escribió en el
mensaje news:
Erick,

A que te refieres cuando mencionas "registros", a filas en la tabla o a
ocurrencias de otros caracteres en el valor almacenado en la columna?

Si expones un ejemplo, prodriamos tratar de dar una solucion.

AMB

"Erick Sanchez" wrote:


Estoy intentando eliminar letras de cadenas de caracteres que contienen
nombres son en realidad casi 1000 filas las que hay que modificar. para
eliminar un valor x estoy utilizando la funcion charindex de esta forma

update table1
set col1=substring(col1,1,charindex('char',col1)-1)
si fuera un solo dato me funciona pero como les dije son casi 1000
registros
..

Existe alguna funcion de caracteres que me permita eliminar mas de un
registro

gracias







Respuesta Responder a este mensaje
#3 Alejandro Mesa
09/08/2005 - 16:00 | Informe spam
Erick,

Cual es el error que te manda?

El problema que veo es que no existe un patron para tratar todos los cambios
de la misma manera. VVas a tener que hacerlo por parte.

Ejemplo:

declare @t table (
c1 varchar(25)
)

insert into @t values('luis')
insert into @t values('erick')
insert into @t values('eduardo')
insert into @t values('miguelc')
insert into @t values('manxuel')
insert into @t values('albat')
insert into @t values('ric~ard?')

update @t
set c1 = replace(replace(c1, '~', ''), '?', '')
where c1 = 'ric~ard?'

update @t
set c1 = replace(c1, 'x', '')
where c1 = 'manxuel'

select * from @t
go


AMB



"Erick Sanchez" wrote:


Me refiero a filas

son 100 distintos nombres almacenados en una tabla

ejemplo
luis
erick
eduardo
miguelc
manxuel
albat
ric~ard?

asi esta lo que pasa como ves algunos caracteres extraños y tengo que
eliminarlos, intente con Charindex como dije anteriormente y no funciono me
manda un error cuando trato de modificar varias lineas para un solo valor
funciona. Meti la funcion en un cursor y pasa lo mismo.

"Alejandro Mesa" escribió en el
mensaje news:
> Erick,
>
> A que te refieres cuando mencionas "registros", a filas en la tabla o a
> ocurrencias de otros caracteres en el valor almacenado en la columna?
>
> Si expones un ejemplo, prodriamos tratar de dar una solucion.
>
> AMB
>
> "Erick Sanchez" wrote:
>
>>
>> Estoy intentando eliminar letras de cadenas de caracteres que contienen
>> nombres son en realidad casi 1000 filas las que hay que modificar. para
>> eliminar un valor x estoy utilizando la funcion charindex de esta forma
>>
>> update table1
>> set col1=substring(col1,1,charindex('char',col1)-1)
>> si fuera un solo dato me funciona pero como les dije son casi 1000
>> registros
>> ..
>>
>> Existe alguna funcion de caracteres que me permita eliminar mas de un
>> registro
>>
>> gracias
>>
>>
>>
>>
>




Respuesta Responder a este mensaje
#4 Erick Sanchez
09/08/2005 - 16:44 | Informe spam
Bueno en realidad si es un patron a los nombres siempre se les agrega un
caracter al final y algunos al comienzo

en realidad es asi

luis}
erick~
?alberto

"Alejandro Mesa" escribió en el
mensaje news:
Erick,

Cual es el error que te manda?

El problema que veo es que no existe un patron para tratar todos los
cambios
de la misma manera. VVas a tener que hacerlo por parte.

Ejemplo:

declare @t table (
c1 varchar(25)
)

insert into @t values('luis')
insert into @t values('erick')
insert into @t values('eduardo')
insert into @t values('miguelc')
insert into @t values('manxuel')
insert into @t values('albat')
insert into @t values('ric~ard?')

update @t
set c1 = replace(replace(c1, '~', ''), '?', '')
where c1 = 'ric~ard?'

update @t
set c1 = replace(c1, 'x', '')
where c1 = 'manxuel'

select * from @t
go


AMB



"Erick Sanchez" wrote:


Me refiero a filas

son 100 distintos nombres almacenados en una tabla

ejemplo
luis
erick
eduardo
miguelc
manxuel
albat
ric~ard?

asi esta lo que pasa como ves algunos caracteres extraños y tengo que
eliminarlos, intente con Charindex como dije anteriormente y no funciono
me
manda un error cuando trato de modificar varias lineas para un solo valor
funciona. Meti la funcion en un cursor y pasa lo mismo.

"Alejandro Mesa" escribió en el
mensaje news:
> Erick,
>
> A que te refieres cuando mencionas "registros", a filas en la tabla o a
> ocurrencias de otros caracteres en el valor almacenado en la columna?
>
> Si expones un ejemplo, prodriamos tratar de dar una solucion.
>
> AMB
>
> "Erick Sanchez" wrote:
>
>>
>> Estoy intentando eliminar letras de cadenas de caracteres que
>> contienen
>> nombres son en realidad casi 1000 filas las que hay que modificar.
>> para
>> eliminar un valor x estoy utilizando la funcion charindex de esta
>> forma
>>
>> update table1
>> set col1=substring(col1,1,charindex('char',col1)-1)
>> si fuera un solo dato me funciona pero como les dije son casi 1000
>> registros
>> ..
>>
>> Existe alguna funcion de caracteres que me permita eliminar mas de un
>> registro
>>
>> gracias
>>
>>
>>
>>
>




Respuesta Responder a este mensaje
#5 Erick Sanchez
09/08/2005 - 17:02 | Informe spam
Tambien me pasa con los valores negativos los datos vienen con el signo al
final yo lo quite con replace pero ahora como agrego el signo al principio.
ejemplo
los datos vienen
00000125.23-
00000011.35-
los 0 son por que estos datos estan en formato nvarchar de 12


update tab
set c1=replace(c1,'-','')
where substring(c1,12,1)='-'




"Erick Sanchez" escribió en el mensaje
news:


Bueno en realidad si es un patron a los nombres siempre se les agrega un
caracter al final y algunos al comienzo

en realidad es asi

luis}
erick~
?alberto

"Alejandro Mesa" escribió en el
mensaje news:
Erick,

Cual es el error que te manda?

El problema que veo es que no existe un patron para tratar todos los
cambios
de la misma manera. VVas a tener que hacerlo por parte.

Ejemplo:

declare @t table (
c1 varchar(25)
)

insert into @t values('luis')
insert into @t values('erick')
insert into @t values('eduardo')
insert into @t values('miguelc')
insert into @t values('manxuel')
insert into @t values('albat')
insert into @t values('ric~ard?')

update @t
set c1 = replace(replace(c1, '~', ''), '?', '')
where c1 = 'ric~ard?'

update @t
set c1 = replace(c1, 'x', '')
where c1 = 'manxuel'

select * from @t
go


AMB



"Erick Sanchez" wrote:


Me refiero a filas

son 100 distintos nombres almacenados en una tabla

ejemplo
luis
erick
eduardo
miguelc
manxuel
albat
ric~ard?

asi esta lo que pasa como ves algunos caracteres extraños y tengo que
eliminarlos, intente con Charindex como dije anteriormente y no funciono
me
manda un error cuando trato de modificar varias lineas para un solo
valor
funciona. Meti la funcion en un cursor y pasa lo mismo.

"Alejandro Mesa" escribió en
el
mensaje news:
> Erick,
>
> A que te refieres cuando mencionas "registros", a filas en la tabla o
> a
> ocurrencias de otros caracteres en el valor almacenado en la columna?
>
> Si expones un ejemplo, prodriamos tratar de dar una solucion.
>
> AMB
>
> "Erick Sanchez" wrote:
>
>>
>> Estoy intentando eliminar letras de cadenas de caracteres que
>> contienen
>> nombres son en realidad casi 1000 filas las que hay que modificar.
>> para
>> eliminar un valor x estoy utilizando la funcion charindex de esta
>> forma
>>
>> update table1
>> set col1=substring(col1,1,charindex('char',col1)-1)
>> si fuera un solo dato me funciona pero como les dije son casi 1000
>> registros
>> ..
>>
>> Existe alguna funcion de caracteres que me permita eliminar mas de un
>> registro
>>
>> gracias
>>
>>
>>
>>
>












Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida