J'ai besoin d'une instruction de mise à jour SQL pour mettre à jour un champ particulier de toutes les lignes avec une chaîne "test" à ajouter devant la valeur existante.
Par exemple, si la valeur existante est "try", elle devrait devenir "testtry".
Vous pouvez utiliser la fonction CONCAT pour le faire:
UPDATE tbl SET col=CONCAT('test',col);
Si vous voulez être plus intelligent et ne mettre à jour que les colonnes pour lesquelles le test n’a pas encore été ajouté, essayez
UPDATE tbl SET col=CONCAT('test',col)
WHERE col NOT LIKE 'test%';
UPDATE tablename SET fieldname = CONCAT("test", fieldname) [WHERE ...]
De nombreuses fonctions de mise à jour des chaînes de caractères dans MySQL semblent fonctionner comme suit: Si un argument est null
, la concaténation ou d'autres fonctions renvoient également null
. Ainsi, pour mettre à jour un champ avec la valeur null
, commencez par le définir sur une valeur non NULL, telle que ''
.
Par exemple:
update table set field='' where field is null;
update table set field=concat(field,' append');
C'est simple
UPDATE YourTable SET YourColumn = CONCAT('prependedString', YourColumn);
Nous pouvons concattre la même colonne ou aussi une autre colonne de la table.