私はここでcaseというステートメントで自己結合クエリを使用しています。私のクエリは、データベースから完全に完全な単語にマッチするように動作しなければなりません単語内の単語に一致する必要があります。私はそれがその文字列と更新データベースからその単語を削除する必要があり、正確な単語の一致を検出した後にMysqlのクエリが正確な単語と一致し、データベースからその正確な単語を削除します
。私が一致する場合
それは、正確な単語を一致させることができますが、問題はそれが単語内の単語を更新しています。私の質問をここで見てください。
update table1 a
left join table1 b on
(a.id = b.id)
SET a.column = CASE
WHEN b.column2 IS NOT NULL THEN REPLACE(a.column, 'ich', '')
END
where (a.column REGEXP '[[:<:]]ich[[:>:]]')
元の文字列(カラム):クエリ出力文字列(列)上記
ich fühlte mich beobachtet, konnte nicht in ruhe auswählen
:
fühlte m beobachtet, nt ruhe auswählen
出力(列)を来なければならない:
fühlte mich beobachtet, konnte nicht in ruhe auswählen
解答をお勧めします。「ich」という単語は、1つの単語全体と一致するだけで、単語内の単語は削除されているため、削除する必要があります。
REPLACE(concat( ''、a.column、 '')、 'ich'、 '') 'を試してください。 –
チェックこのリンク:http://stackoverflow.com/questions/986826/how-to-do-a-regular-expression-replace-in-mysql –
@おかげWiktorStribiżewその –