Sql Sets e Wheres

11/09/2004

2

Olá pessoal!
Alguém saberia se é possível na cláusula Update setar dois campos com dois Where diferentes?
Por ex:
Codigo = Codigo * 10 Where Codigo < 100 ou
Codigo = Codigo + 10 Where Codigo >= 100

Ou terei que fazer dois Updates ?
Desde já agradeço !!!


Responder

Posts

11/09/2004

Afarias

terá de fazer 2 updates



T+


Responder

13/09/2004

Ipc$

Ok Afarias, obrigado !


Responder

13/09/2004

Motta

qual bd ?

no Oracle

update tabela
set Codigo = decode(sign(codigo - 100),-1,Codigo * 10,
1,Codigo + 10,Codigo + 10)



no FB tem uma funcao coalesce (acho) que é semenhante ao decode


Responder

13/09/2004

Beppe

Tvz vc possa fazer um update só, usando esta sintaxe:
Codigo = ((Codigo * 10) * cast((Codigo < 100) as Integer)) + 
  ((Codigo + 10) * cast((Codigo >= 100) as Integer))



Responder

14/09/2004

Ipc$

Obrigado pessoal, vou fazer uns testes. Se funcionar num banco e em outro não, para mim não vai servir pq preciso de um sql padrão que funcione em qualquer banco.


Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar