MySQLデータベーステーブル '写真'に列 'ファイル名'があります。 filename列の値のスペースをアンダースコアに置き換える必要があります。単一/複数のクエリで可能ですか?もしそうなら?
REPLACE
関数を使用できます。
REPLACE(str,from_str,to_str)
文字列
str
を返します。文字列_from_str
_はすべて文字列_to_str
_に置き換えられます。REPLACE()
は、_from_str
_を検索するときに大文字と小文字を区別する一致を実行します。
したがって、テーブルのすべての行で、文字のすべての出現箇所を別の出現箇所で置き換えるには、次のようにします。
_update photos set filename = replace(filename, ' ', '_');
_
つまり、列filename
で ''を検索し、代わりに '_'を使用します。結果をfilename
に戻します。
update photos set filename = replace(filename,' ', '_');