2017-05-15 4 views
0

Ich möchte Tabelleneinträge gleichzeitig für alle Spalten auf einmal aktualisieren.Aktualisieren Sie Tabellenspalte zum Entfernen unerwünschter Anführungszeichen in SQL Server

Angenommen in der Tabelle gibt es eine Spalte EmployeeName mit Einträgen wie „SAM“, „Jhon“ und so weiter ...

ich all diese Einträge unter seiner Spalte benötigen, sollte wie SAM, Jhon nur erscheinen. .. Anführungszeichen sollten nicht vorhanden sein, bitte stellen Sie mir eine Anfrage für das Szenario.

Vielen Dank im Voraus

+1

beachten Sie bitte Datenbeispieltabelle und das erwartete Ergebnis in formatierten Text hinzufügen. Zeigen Sie uns auch Ihren aktuellen Abfrageversuch – TheGameiswar

+1

Sehr schwer zu lesen. Bitte beachten Sie http://stackoverflow.com/help/mcve und machen Sie Ihre Frage attraktiver zum Lesen. – guenhter

Antwort

0
update table1 set column1 = case 
    when column1 = 'entity1' then 'entity2' 
    when column1 like '%entity3%' then 'entity4' 
    else 'entity5' 
end 
+0

Vielen Dank für dieses Code-Snippet, das sofortige Hilfe bieten kann. Eine richtige Erklärung [würde erheblich verbessern] (// meta.stackexchange.com/q/114762) ihren pädagogischen Wert, indem sie * warum * dies eine gute Lösung für das Problem ist, und es für zukünftige Leser mit ähnlichen, nützlicher machen würde, aber nicht identisch, Fragen. Bitte [bearbeiten] Sie Ihre Antwort, um eine Erläuterung hinzuzufügen und geben Sie an, welche Einschränkungen und Annahmen gelten. Insbesondere ist es schwer zu sehen, wie dies die Zeichen wie gewünscht entfernt. –

0

am weitesten links stehende Zitat zu entfernen:

UPDATE MyTable 
SET EmployeeName = SUBSTRING(EmployeeName, 1, LEN(EmployeeName)-1) 
WHERE RIGHT(EmployeeName, 1) = '"' 

Oder können Sie auch eine einfachere Verwendung:

UPDATE MyTable 
SET EmployeeName = SUBSTRING(EmployeeName, 2, LEN(EmployeeName)) 
WHERE LEFT(EmployeeName, 1) = '"' 

Um am weitesten rechts stehende Zitat zu entfernen Möglichkeit, alle Zitate auf einmal zu entfernen.

update MyTable set EmployeeName = replace(EmployeeName,'"','') 
3

Verwenden Replace Funktion als nächste: -

update TableName 
set columnName= REPLACE(columnName,'"','') 

Demo: -

Create table #Dummy (col varchar(100)) 

insert into #Dummy values ('"SAM", "Jhon", "Smith"') 

update #Dummy 
set col = REPLACE(col,'"','') 


select * from #Dummy 

Ergebnis: -

SAM, Jhon, Smith 
0

Warum nicht die Replace Funktion versuchen.

Syntax: REPLACE (string_expression , string_pattern , string_replacement)

Wenn Ihre Tabelle die Daten mit doppelten Anführungszeichen in der Spalte besteht, müssen Sie die Tabelle mit der folgenden Abfrage aktualisieren;

Update <tablename> 
Set <columnName> = REPLACE(<columnName>,'"','') 
where <ColumnWithUniqueVale> = <something> 

beispiel Replace(EmployeeName,'"','')

+0

Ich glaube nicht, dass Sie das '' 'durch ein '' '' (Leerzeichen) ersetzen wollen, sondern mit einer leeren Zeichenkette ' ""; – Shnugo

+0

@shnugo Die Antwort wurde aktualisiert, mein Fehler. Vielen Dank – shishir

Verwandte Themen