2008-11-25 9 views
1

Comment écrire une instruction sql de mise à jour qui mettrait à jour les enregistrements et la valeur 'set' change à chaque fois?Mise à jour avec modification de la valeur de consigne

Par exemple: Si nous avons des dossiers comme celui-ci

SomeNumber SomeV CurCode WhatCodeShouldBe 
200802754 432 B08 B09 
200802754 432 B08 B09 
200802754 432 B08 B09 
200808388 714 64B C00 
200804119 270 64B C00 

Je souhaite mettre à jour chaque enregistrement « someNumber » afin que « CurCode » sera le même que « WhatCodeShouldBe »

Merci pour toute aide !

Répondre

1
update a 
set 
    3rdColumn = b.2ndColumn 
from 
    tableA a 
    inner join tableB b 
    on a.linkToB = b.linkToA 

qui est basé sur your new comments

0

UPDATE yourtable SET CurCode = WhatCodeShouldBe

0
UPDATE tableName SET CurCode = WhatCodeShouldBe 
0

En supposant que le nouveau code est stocké dans une autre colonne, par exemple WhatCodeShouldBe, dans l'exemple ci-dessus, la déclaration ressemble à quelque chose comme:

UPDATE table SET CurCode = WhatCodeShouldBe 

remplaçant dans la colonne réelle des noms. Cela dit essentiellement au SGBD, "pour chaque ligne, définissez la colonne de code à n'importe quelle valeur dans cette autre colonne, pour chaque ligne".

0

J'ai ces données en formant des tenttables et en recueillant des informations à partir de différentes tables. :(mise à jour de cette table de temp ne sera pas une aide ... Je dois être en mesure de porter les changements sur la table d'origine .. Je vais essayer de donner un meilleur exemple ...

Tableau A: 200802754 432 B08 200802754 432 B08 200802754 432 B08 200808388 714 64B 200804119 270 64B

tableau B 432 B09 432 B09 432 B09 714 C00

Je veux être faire 3ème colonne du tableau A même en deuxième colonne du tableau B ... se joindre aux tables sur la colonne 2. 200804119 270 64B C00

+0

S'il vous plaît modifier vous la question d'inclure cette clarification – kristof

Questions connexes