Teil-Werte aus Spalte vergleichen - How to

Zvoni

Erfahrenes Mitglied
Boing!
Da is es: MySQL 5.7.28
Tja, dann nur als UDF (siehe Link) oder mit wüstem SUBSTRING-Gehampel (zumindest was ich herausfinden konnte)
Rein theoretisch müsste es gehen, wenn du die Position des ersten Leerzeichen suchst/findest, und alles links davon zurückgibst.

EDIT: Hmmmm, scheint mit SUBSTRING_INDEX doch kein wüstes Gehampel zu sein.
MySQL SUBSTRING_INDEX() Function
Wäre also in deinem Fall (ungetestet):
SELECT t.buchungstext, SUBSTRING_INDEX(t.buchungstext, ' ', 1) As Belegfeld FROM buchungen t

Keine Ahnung was passiert, wenn kein Leerzeichen drin ist. (Bsp. RE123456789KarlMustermann)
bzw. du erkennst das Problem.....

EDIT2: Interessant.
mysql strtoint function, extract number from string
Wenn ich das richtig lese könntest du diese Funktion nutzen beginnend ab dem 3. Zeichen (Also das "RE" überspringen). Dann wärst du nicht abhängig davon, ob ein Leerzeichen drin ist.
Funktion müsste natürlich angepasst werden.
 
Zuletzt bearbeitet:

Max-Berater

Mitglied
SELECT t.buchungstext, SUBSTRING_INDEX(t.buchungstext, ' ', 1) As Belegfeld FROM buchungen t

Funktioniert soweit ganz gut - DANKE
Wie kann ich aber allen anderen Text eliminieren, so dass wirklich nur REXXXXXXXX genommen wird und alles andere ohne RE nicht?
 

Max-Berater

Mitglied
Vielen Dank, nun funktioniert alles super.
Letzte Frage, wie bekomme ich per UPDATE Befehl die REXXXXXX Nummern in die Spalte Belegfeld importiert und nicht nur ausgelesen?
Hab mit Update versucht, aber bis jetzt ohne Erfolg.
 

Max-Berater

Mitglied
DANKE FUNZT, jetzt habe ich auch gesehen warum es bei mir nicht ging. Besten Dank, werde dieses Mal zum Anlass nehmen mich hier weiter einzuarbeiten.
 

Neue Beiträge