MySQL URL のバッチ更新: ドメイン名とパス部分のみを置き換えます
この記事では、MySQL の REPLACE 関数を使用して、データベース テーブル内の URL を変更し、ドメイン名とパスの部分のみを置換し、ファイル名を保持する方法を紹介します。
質問:
id
と url
の 2 つの列を含む MySQL テーブルがあるとします。url
列には、「http://domain1.example/images/img1.jpg」のような URL が含まれているとします。ファイル名 を保持したまま、すべての URL を「http://domain2.example/otherfolder/img1.jpg」に更新するにはどうすればよいですか?
答え:
次の SQL ステートメントを実行して更新を完了します:
<code class="language-sql">UPDATE urls SET url = REPLACE(url, 'domain1.example/images/', 'domain2.example/otherfolder/')</code>
説明:
UPDATE urls
ステートメントは、変更するテーブル名を urls
として指定します。 SET url = ...
ステートメントは、url
列の更新を指定します。 REPLACE(url, 'domain1.example/images/', 'domain2.example/otherfolder/')
関数は、URL の一部を置換するために使用されます。 REPLACE
関数の最初のパラメータは、元の URL 文字列です。 REPLACE
関数は、各 URL 値で指定された部分文字列を検索し、ファイル名を保持したまま新しい部分文字列に置き換えます。 この方法を使用すると、ファイル名に影響を与えることなく、指定されたドメイン名とパスの部分のみを変更して、データベース内の多数の URL を効率的に更新できます。
以上がドメインとパスセグメントのみを置き換えて MySQL URL を更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。