comando SQL que altere, simultaneamente, os valores da coluna

MySQL

PostgreSQL

20/07/2018

Escreva o comando SQL que altere, simultaneamente, os valores da coluna "relacao" da tabela "dependente" observando as regras:
"Filho" altere para "Sobrinho"
"Filha" altere para "Sobrinha"
"Esposo" altere para "Irmão" e
"Esposa" altere para "Irmã"

estou fazendo assim pessoal alguem pode em ajudar no que estou errando?

meu codigo:

UPDATE dependente
SET Filho = Sobrinho , Filha = Sobrinha ,Esposo = Irmão , Esposa = Irmã
WHERE relacao= Filho = Filho AND Filha = Filha AND Esposo = Esposo AND Esposa = Esposa;
Gabriel Santos

Gabriel Santos

Curtidas 0

Melhor post

Fernando Duwe

Fernando Duwe

21/07/2018

Gabriel,

Caso tu queiras fazer tudo num select só, pode fazer dessa forma:

UPDATE DEPENDENTE
SET RELACAO = (CASE RELACAO
WHEN 'Filho' THEN 'Sobrinho'
WHEN 'Filha' THEN 'Sobrinha'
WHEN 'Esposo' THEN 'Irmão'
WHEN 'Esposa' THEN 'Irmã'
END)
WHERE RELACAO IN ('Filho', 'Filha', 'Esposo', 'Esposa')
GOSTEI 2

Mais Respostas

Alex William

Alex William

20/07/2018

Faça uma query pra cada, não tente tudo de uma vez porque sempre pode acarretar em erro.<br />
UPDATE dependente SET relacao = ''''Sobrinho'''' WHERE relacao = ''''Filho'''';
UPDATE dependente SET relacao = ''''Sobrinha'''' WHERE relacao = ''''Filha'''';
UPDATE dependente SET relacao = ''''Irmão'''' WHERE relacao = ''''Esposo'''';
UPDATE dependente SET relacao = ''''Irmã'''' WHERE relacao = ''''Esposa'''';
GOSTEI 1
POSTAR