Je me demande si cela est possible. Je veux mettre à jour la colonne x si une condition est vraie, sinon la colonne y serait mise à jour.
UPDATE table SET
(CASE (CONDITION) WHEN TRUE THEN columnx
ELSE columny
END)
= 25
J'ai cherché partout, j'ai essayé certaines choses et je ne trouve pas de solution. Je pense que ce n'est pas possible, mais j'ai pensé demander ici et voir si quelqu'un l'a déjà fait. Merci d'avance.
0 votes
En supposant qu'ils soient tous dans la même table, oui. Vous pouvez toujours l'exécuter dans une transaction, et revenir en arrière en cas d'erreur, pour voir par vous-même.
0 votes
Je ne suis pas sûr de ce que vous voulez dire. J'ai essayé de mettre une condition pour la colonne, mais cela ne fonctionne pas. Cela fonctionne pour une instruction de sélection, mais pas pour une instruction de mise à jour.(select (case (condition) when true then columnx else columny end) from myTable.... la mise à jour ne fonctionne pas, et je vois pourquoi. Il ne semble pas y avoir de moyen de la faire fonctionner.