Hacer update con condición dinámica

22/06/2007 - 19:49 por ghazarian.martin | Informe spam
tengo una tabla con varios campos, a la cual le quiero hacer un update

pero este update lo que tiene que hacer es cambiar los campos que
tengan el valor '1' por el valor '0'

por ej:
la tabla tiene los campos:

Campo1 ='1'
Campo2 ='2'
Campo3 ='2'
Campo4 ='1'

entonces en este caso campo1 y campo4 serían cambiados a 0
agradezco cualquier ayuda

Martín
 

Leer las respuestas

#1 jcac
22/06/2007 - 20:00 | Informe spam
espero te sirva

create table #tmp(campo0 int, campo1 varchar(1), campo2 varchar(1), campo3
varchar(1))
go
insert into #tmp values (1, '1', '2', '1')
insert into #tmp values (2, '2', '2', '1')
insert into #tmp values (3, '1', '1', '1')
insert into #tmp values (4, '1', '2', '2')
insert into #tmp values (5, '2', '2', '2')
insert into #tmp values (6, '2', '1', '1')
insert into #tmp values (7, '2', '1', '2')
go
select * from #tmp
go
update #tmp
set campo1 = case campo1 when '1' then '0' else campo1 end,
campo2 = case campo2 when '1' then '0' else campo2 end,
campo3 = case campo3 when '1' then '0' else campo3 end
go
drop table #tmp
go

saludos

"" escribió en el
mensaje news:
tengo una tabla con varios campos, a la cual le quiero hacer un update

pero este update lo que tiene que hacer es cambiar los campos que
tengan el valor '1' por el valor '0'

por ej:
la tabla tiene los campos:

Campo1 ='1'
Campo2 ='2'
Campo3 ='2'
Campo4 ='1'

entonces en este caso campo1 y campo4 serían cambiados a 0
agradezco cualquier ayuda

Martín

Preguntas similares