Comment dois-je mettre à jour les valeurs de champ ID pour tous les enregistrements en fonction des valeurs précédentes?

dba.stackexchange https://dba.stackexchange.com/questions/15699

  •  22-10-2019
  •  | 
  •  

Question

Je besoin d'une requête SQL qui peut mettre à jour les champs d'identification pour tous les enregistrements d'une table de leurs valeurs précédentes à une nouvelle valeur en fonction de cette valeur précédente.

Par exemple, si l'ID est 1, je veux changer pour 9991 -. Préfixer '999' à chaque ID dans la table

Quel est le moyen de faire plus efficaces cela?

Était-ce utile?

La solution

A couple d'options viennent à l'esprit. Si vous avez un type de données charish:

update table set column=concat('999',column);

Si vous avez un type entier à trouver la valeur maximale, disons que c'est sous 10 000 puis

update table set column=9990000+column
Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top