Condicional, como fazer?
Como eu faço para colocar uma condicional?
Quero que primeiro execute as linhas 07,08,09.. depois que executar e ficar ultimo='A' então executa as linhas 11,12,13 ... depois que executar e ficar ultimo='B' então executa as linhas 15,16,17
1- Se ultimo<>'A' e ao executar as linhas 07,08,09 passar a ser ultimo='A', então suspende as execuções.
2 - Se ultimo<>'B' e ao executar as linhas 11,12,13 passar a ser ultimo='B' então suspende as execuções.
3 - Se ultimo<>'C' e ao executar as linhas 15,16,17 passar a ser ultimo='C' então suspende as execuções.
Resumindo: quero executar as linhas 07,08,09 ... após executar, se houver alguma alteração, então não faz mais nada, mas se não houver alteração, então executa as linhas 11,12,13 ... após executar, se houver alguma alteração, então não faz mais nada, mas se não houver alteração, então executa as linhas 15,16,17.
Espero que consigam entender
01 SET @idmil = 1;
02 UPDATE mil SET mABC=LEAST(A,B,C) WHERE ID=@idmil;
03 UPDATE mil SET mAB=LEAST(A,B) WHERE ID=@idmil;
04 UPDATE mil SET mAC=LEAST(A,C) WHERE ID=@idmil;
05 UPDATE mil SET mBC=LEAST(B,C) WHERE ID=@idmil;
06
07 UPDATE mil SET ultimo='A', A=A+1 WHERE ID=@idmil AND A=mABC AND ultimo<>'A';
08 UPDATE mil SET ultimo='A', A=A+1 WHERE ID=@idmil AND A=mAB AND ultimo<>'A' AND ultimo='C' AND ultimo<>'B';
09 UPDATE mil SET ultimo='A', A=A+1 WHERE ID=@idmil AND A=mAC AND ultimo<>'A' AND ultimo='B' AND ultimo<>'C';
10
11 UPDATE mil SET ultimo='B', B=B+1 WHERE ID=@idmil AND B=mABC AND ultimo<>'B';
12 UPDATE mil SET ultimo='B', B=B+1 WHERE ID=@idmil AND B=mBC AND ultimo<>'B' AND ultimo='A' AND ultimo<>'C';
13 UPDATE mil SET ultimo='B', B=B+1 WHERE ID=@idmil AND B=mAB AND ultimo<>'B' AND ultimo='C' AND ultimo<>'A';
14
15 UPDATE mil SET ultimo='C', C=C+1 WHERE ID=@idmil AND C=mABC AND ultimo<>'C';
16 UPDATE mil SET ultimo='C', C=C+1 WHERE ID=@idmil AND C=mAC AND ultimo<>'C' AND ultimo='B' AND ultimo<>'A';
17 UPDATE mil SET ultimo='C', C=C+1 WHERE ID=@idmil AND C=mBC AND ultimo<>'C' AND ultimo='A' AND ultimo<>'B';
18
19 /só para visualizar na tela/
20 SELECT ID,guerra,A,B,C,ultimo FROM mil WHERE ID=@idmil;Discussão (2)
Carregando comentários...