306 votes

Mise à jour de SQL Server 2008 et remplacer une partie de chaîne

J'ai un tableau avec deux colonnes, ID et Value. Je veux modifier une partie de certaines chaînes dans la deuxième colonne.

Exemple de Tableau:

ID            Value
---------------------------------
1             c:\temp\123\abc\111
2             c:\temp\123\abc\222
3             c:\temp\123\abc\333
4             c:\temp\123\abc\444

Maintenant l' 1231 dans la Value chaîne de caractères n'est pas nécessaire. J'ai essayé d' UPDATE et REPLACE:

UPDATE dbo.xxx
SET Value = REPLACE(Value, '%123%', '')
WHERE ID <= 4

Quand j'execute le script SQL Server ne signale pas une erreur, mais il ne met pas à jour tout ce soit. Pourquoi est-ce?

515voto

Jon Egerton Points 16192
<p>Vous n’avez pas besoin de caractères génériques dans le <code></code> -il trouve juste la chaîne vous entrez pour le second argument, donc ce qui suit devrait fonctionner :<pre><code></code></pre><p>(J’ai aussi ajouté le <code></code> dans la remplacer comme je suppose que vous n’avez pas besoin que soit)</p></p>

43voto

Parado Points 13763
<p>Essayez de supprimer <code></code> chars comme ci-dessous<pre><code></code></pre></p>

28voto

xinux Points 30
<p>Pour que la requête de courir plus vite en grandes tables où pas chaque ligne doit être mise à jour, vous pouvez également choisir de mettre à jour uniquement les lignes qui seront modifiés :<pre><code></code></pre></p>

6voto

Geek404 Points 1
<p>Vous disposez d’une table où vous avez date Code qui est sept caractères quelque chose comme<pre><code></code></pre><p>Maintenant vous voulez remplacer tous</p><pre><code></code></pre><p>Avec</p><pre><code></code></pre><p>La requête SQL, que vous devez exécuter est</p><pre><code></code></pre></p>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: