Jump to content

Suchen und Löschen nach bestimmter Zeichenanzahl


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

  • 2 Monate später...
Dein "Befehl" der Wahl: REPLACE

REPLACE (Transact-SQL)

 

Gruß

Carsten

Leider komme ich mit dem einfachen REPLACE nicht weiter.

 

Ausgangsbeispiele (Beispielzelle):

 

meier lh10; müller gf3; schulz 01

 

Ergebnis soll so aussehen:

 

meier lh10; müller gf3

 

oder

 

meier lh10; müller gf3;

 

Meine Vorstellungen mit einen einfachen Replace funktionieren leider nicht.

 

Beispiel-Statement:

UPDATE Exemplar SET Spalte = REPLACE(Spalte, '%;%;%', '%;%;');

 

Hinweis: Die Anzahl der Zeichen zwischen den Semikolons ist nicht eindeutig.

 

Ich möchte "nur" alle Zeichen nach dem zweiten Semikolon entfernen/löschen.

 

Vielleicht hat noch einer eine Idee.

 

Danke und Gruß

Link zu diesem Kommentar

Hallo,

das sollte klappen:

 

UPDATE Exemplar

SET Spalte = LEFT(Spalte, CHARINDEX(';', Spalte, CHARINDEX(';', Spalte)+1))

WHERE Spalte LIKE '%;%;%'

 

Das innerste CHARINDEX findet das erste Semikolon (Position).

Auf diese Position wird eine 1 addiert und dem zweiten CHARINDEX als Startwert der Suche übergeben.

Nun findet das zweite CHARINDEX die Position des zweiten Semikolon, das nun an LEFT übergeben wird.

LEFT bildet dann den neuen String.

Wichtig: mit WHERE muss(!) garantiert werden, dass die zu ändernden Strings auch mindestens 2 Semikolon enthalten, sonst gibt es leere Spalten.

 

CHARINDEX (Transact-SQL)

 

Am besten erstmal mit SELECT testen:

 

SELECT LEFT(Spalte, CHARINDEX(';', Spalte, CHARINDEX(';', Spalte)+1))

FROM Exemplar

WHERE Spalte LIKE '%;%;%'

 

 

Gruß Kai

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...