問題ステートメント:
投稿 ID と対応する MySQL テーブルがあります。タグは、「タグ」列にカンマ区切りの文字列として保存されます。これらのタグを個々のキーワードに分割し、別のキーワード テーブルに挿入する必要があります。次に、各投稿を関連するキーワードにリンクするマッピング テーブル PostKeywords を作成します。ただし、現在のアプローチは大規模なデータセットに対して低速です。
解決策:
キーワード分割プロセスの効率を高めるには、MySQL ストアド プロシージャの利用を検討してください。このアプローチでは、カーソルを使用して投稿タグ テーブルを反復処理し、キーワードを挿入し、単一のトランザクションでキーワード マッピングを投稿します。
実装:
テーブルとストアド プロシージャの作成:
提供されたコードの概要に従って、必要なテーブルとストアド プロシージャを作成します。
テストの挿入データ:
サンプル データを PostTags テーブルに挿入してプロシージャをテストします。
ストアド プロシージャの実行:
ストアド プロシージャを呼び出して投稿タグを分割し、キーワード マッピングを作成します。
結果の確認:
キーワード、PostTags、およびデータが正しく挿入されていることを確認するための PostKeywords テーブル。
ストアド プロシージャの利点:
追加のヒント:
以上がMySQL と PHP でカンマ区切りの文字列からキーワードを効率的に分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。