Requête SQL pour ajouter un préfixe à une valeur existante dans un champ

j'ai cherché et cherché une réponse à cela, et je pense que ce doit être un jeu d'enfant pour quiconque connaît SQL (qui n'est pas moi).

je veux insérer un préfixe pour les valeurs dans un champ d'une table dans ma DB.

Plus précisément, j'ai une table jos_content dans lequel j'ai un champ "titre" (qui contient les titres des articles de contenu de mon site joomla).

Toutes les valeurs de ce champ "titre" sont des noms de personnes. Maintenant tout ce que je veux faire c'est d'ajouter un préfixe " M. " pour toutes les valeurs de ce champ.

je peux le faire à partir de phpmyadmin en cliquant sur l'icône edit pencil et en ajoutant simplement Mr devant toutes les valeurs mais j'ai environ 750 lignes et une commande SQL qui peut insérer un préfixe de ' Mr ' devant toutes les valeurs de ce champ sera d'une grande aide.

j'ai lu au sujet des commandes 'UPDATE' mais cela remplace la valeur par ce que vous fournissez. Mais je veux laisser les valeurs restent et ajouter un préfixe avant ils.

s'il vous Plaît quelqu'un peut-il m'aider à réaliser cela avec une commande SQL ?

Merci une tonne.

16
demandé sur billynoah 2012-11-13 14:18:40

4 réponses

vous n'avez pas d'autres conditions comme mettre à jour ceci dans toutes les lignes alors vous pouvez essayer

UPDATE jos_content SET title = CONCAT('Mr. ', title) 

si vous voulez mettre à jour conditionnellement cela signifie que la ligne particulière doit mettre à jour vous pouvez utiliser

 UPDATE jos_content SET title = CONCAT('Mr. ', title)  where fiedl_name ='condition'

eg: UPDATE jos_content SET title = CONCAT('Mr. ', title)  where id = '1'

ceci ne mettra à jour qu'une ligne contenant id=1.

de toute façon avant de faire ceci doit conserver une copie de sauvegarde

37
répondu Jobin Jose 2012-11-13 18:05:31
update tablename set title = 'Mr. ' || title where ....
6
répondu sufleR 2012-11-13 10:23:41

UPDATE jos_content SET title = CONCAT('Mr. ', title) WHERE 1

avant de tester la requête faire une sauvegarde de base de données.

4
répondu Valentin Despa 2012-11-13 11:25:41

juste de faire comme ceci

Si, par exemple, je veux ajouter un symbole +avant l'indicatif du pays:

UPDATE [masters].[country] SET Countrycode = '+' +Countrycode
1
répondu Thivan Mydeen 2016-01-11 16:40:44