dedlfix: Mysql SET update

Beitrag lesen

Tach!

Genau das ist mein Problem REPLACE() ersetzt alles:

Ich sag ja, du kannst es nicht verwenden.

REPLACE(
		laenge_wort,
		(SUBSTRING_INDEX(SUBSTRING_INDEX(liste2, ',', FIND_IN_SET('a', liste1)), ',', -1)),
		((SUBSTRING_INDEX(SUBSTRING_INDEX(liste2, ',', FIND_IN_SET('a', liste1)), ',', -1))+1)
				)

Dennoch müsste es gehen...

Aber nicht mit REPLACE(). Stattdessen den linken Teil abschneinden, den rechten auch, dann hast du einen mittleren Teil. Den bearbeiten und den linken, die Mitte und den rechten Teil wieder zusammensetzen.

In der Doku habe ich folgendes gefunden UPDATE tbl SET set_col = set_col & ~(1 << (FIND_IN_SET('TheValueToBeRemoved', set_col)-1)) WHERE ...

also müsste es evtl. bitweise funktionieren

Nein, du hast kein bitweises SET, sondern einen kommaseparierten String. FIND_IN_SET() kann mit beidem arbeiten. Aber Bit-Operationen nützen dir nichts.

dedlfix.