Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/12/2010, 19h49   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 35
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 35
Points : 2
Points : 2
Par défaut Supprimer une partie des informations d'un champ TEXT

Bonjour,

j'ai une table "_post" qui comprend 5 colonnes.
Je voudrais nettoyer les champs de la 5ème colonne TEXT ('auteur') car ils contiennent des informations obsolètes.

Ex :
Code :
<span style="color:#F5680A"><strong>Athos77
Je sais que ce n'est pas un DELETE mais un UPDATE. Je veux simplement garder le nom de chaque auteur (dans l'exemple : Athos77).

Je bloque dans la construction de ma requête :
Code :
1
2
UPDATE * FROM `_posts` WHERE 1'`auteur` FROM 1 FOR POSITION('>' IN auteur) - 1)
WHERE auteur LIKE '%>%'
et il faut que ce soit le dernier ">" qui soit pris en compte, pour effacer tout ce qu'il y a avant le nom de l'auteur.

J'ai besoin de votre aide. Merci d'avance
Athos77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2010, 21h51   #2
Membre Expert
 
Avatar de Nudger
 
Homme Thomas Arnaud
Directeur de projet
Inscription : octobre 2010
Messages : 452
Détails du profil
Informations personnelles :
Nom : Homme Thomas Arnaud
Âge : 36
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Directeur de projet
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : octobre 2010
Messages : 452
Points : 1 012
Points : 1 012
Envoyer un message via Skype™ à Nudger
Bonsoir,

La syntaxe de l'update devrait plutôt être ça:

Code :
UPDATE [TABLE] SET [champ]=[nouvelle valeur] WHERE [clause WHERE]
__________________
www.nudge.org Surveillez et optimisez vos applications Java
Nudger est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2010, 15h53   #3
Invité de passage
 
Inscription : janvier 2008
Messages : 35
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 35
Points : 2
Points : 2
merci,

ce que je ne comprends pas, c'est quoi mettre à la place de [nouvelle valeur] et dans [clause WHERE] parce qu'il s'agit d'effacer :
- tous les caractères (variables selon les champs) qui se trouvent avant le nom de chaque auteur de post.

Athos77 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2010, 09h02   #4
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
Bonjour
quel est votre SGBDR ? (les fonctions de chaine de caractères diffèrent souvent d'un SGBDR à l'autre)

l'idée pour ce genre de problème, serait d'inverser la chaine, trouver le premier '>', retirer ce qu'il y a après, et inverser la chaine de nouveau
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h07.


 
 
 
 
Partenaires

Hébergement Web