Hola a todos,
Necesito cambiar un campo nombre con el formato apellido apellido, nombre por nombre, apellido apellido. ¿Hay alguna manera de hacerlo?.
Muchas gracias.
Enrique
| |||
Cambiar datos de un campo Hola a todos, Necesito cambiar un campo nombre con el formato apellido apellido, nombre por nombre, apellido apellido. ¿Hay alguna manera de hacerlo?. Muchas gracias. Enrique |
| ||||
Algo asi.. con un cursor... declare @lugar int,@id int declare cambiar_formato_ok cursor for select PATINDEX( '%,%', nombre),id from mi_tabla order by id open cambiar_formato_ok fetch next from cambiar_formato_ok into @lugar ,@id while @@fetch_status=0 begin update mi_tabla set nombre=substring(nombre,@lugar+1,len(rtrim(nombre) ))+','+ substring(nombre,1,@lugar-1)) where id=@id fetch next from cambiar_formato_ok into @lugar ,@id end close cambiar_formato_ok deallocate cambiar_formato_ok go Saludos. |
| ||||
Respuesta: Cambiar datos de un campo A mi tambien... en operaciones asi es completamente innecesario... Tomando como base el script posteado, podriamos hacer el update directo..
Código:
Saludos! UPDATE mi_tabla SET nombre = SUBSTRING(nombre,PATINDEX( '%,%', nombre)+1,LEN(RTRIM(NOMBRE))) + ',' + SUBSTRING(nombre,1,PATINDEX( '%,%', nombre)-1)) WHERE PATINDEX( '%,%', nombre) > 0
__________________ La sencillez y naturalidad son el supremo y último fin de la cultura... -- MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications. |