Duvida num Update em SQL

GanondorfTM

Power Member
Boas!

É o seguinte: eu tenho uma tabela colaborador. Cada colaborador pode trabalhar em mais do que um hospital e por isso, na tabela existe o id_hospital, id_hospital2, id_hospital3 e id_hospital4.

A minha questão é: eu quero fazer um update dum hospital dum colaborador, mas cujo valor é X, ou seja, eu quero mudar o conteúdo dum row, não fazendo a pesquisa através da coluna, mas através do conteudo do row.

É possivel fazer uma pesquisa na horizontal?

Fiquem bem.
 
Boas!

Parece que consigo resolver sempre os meus problemas antes de alguém responder lol.

Acabei por contornar o problema de outra maneira.

De qq maneira, obgd ;)
 
Olá,

Se percebi bem o que queres (fazer update a uma linha se o gajo trabalhar no hospital <VAL1>)

Código:
update <TABLE> 
set <ATTR>=<VAL> 
where  id_hospital=<VAL1> OR id_hospital2=<VAL1> OR id_hospital3=<VAL1> OR id_hospital4=<VAL1>;
Aparte do tópico a tua tabela não está normalizada:
E se o colaborador trabalhar em 5 hospitais? Vais adicionar outra coluna?
E se ele só trabalhar num hospital? Vai ter aqueles campos todos a null?

Devia ser uma tabela como:
Código:
<id colaborador><id hospital>
<marco><hospital santa maria>
<marco><hospital dos covoes>
<marco><maternidade alfredo da costa>
<marco><huc>
<[B][URL="http://forum.zwame.pt/member.php?u=136079"][B][COLOR=LimeGreen]GanondorfTM[/COLOR][/B][/URL][/B]><huc>
 
boas,
tu dizes q tens na tabela colaborador o id_hsp1, id_hps2, por ai fora certo?
isto e 1 hipotese rara, mas supoe q tens 1 colaborador a trabalhar em 50 hospitais diferentes. vais colocar 50 campos? nao parece bem :p ou entao tens la 10 campos id_hsp e ele trabalha apenas num deles tudo o resto é null.
Porque e que nao crias uma tabela auxiliar q relaciona o hsp com o colaborador e smpre que queres fazer o tal update dizes o calaborador 1 trabalha no hsp 1, se quiseres que ele trabalhe no hsp 2 alteras nessa tabela e por aí fora. e simples e tornas o teu modelo de dados normalizado.
 
Back
Topo