私はこのクエリに苦労しており、時間を無駄にしていて PHP スクリプトを作成する必要があるかどうか、または次のようなことが実際に可能かどうかを知りたいですか?
UPDATE my_table
SET @userid = user_id
AND SET filename('http://pathto/newfilename_'@userid'.jpg')
FROM my_table
WHERE filename
LIKE '%_%' AND filename
LIKE '%jpg'AND filename
NOT LIKE 'http%';
基本的に、システムを変更しているときにファイル名と一致しないため、データベースで名前を変更する必要がある700の奇妙なファイルがあり、データベースで呼び出されます。形式は次の2_gfhgfhf.jpg
ように変換されますuserid_randomjumble.jpg
しかし、データベース内のすべてのファイルがこの形式であるわけではなく、数千のうち約 700 のみです。_
したがって、含まれているが含まれていない名前を識別したいと思いますhttp
(これは、私が触れたくない正しい形式です)。
私はそれをうまくやることができますが、今はトリッキーなビットです!!
userid_randomjumble.jpg
そのファイル名を次のように置き換えたいhttp://pathto/filename_userid.jpg
ので、その行の列 user_id を変数に設定し、それを新しいファイル名に挿入します。
上記は明らかな理由で機能しませんが、私がやろうとしていることを回避する方法があるかどうかはわかりません. それが可能かどうかわかりませんか?私はこれで時間を無駄にしていますか? mysql を使用して PHP に移行し、怠惰になるのをやめるべきですか? または、これを機能させる方法はありますか?