検索

ホームページ  >  に質問  >  本文

SQLを使用してカンマ区切りリスト内の特定の値を置換します

<p>カンマ区切りリスト内の特定の値を置き換える必要があります。 </p> <p>たとえば、Tags という名前の列があり、次の内容が入力されているとします: Holidays、Holidays 2023、Test。 </p> <p>「Holidays」という単語を「Holiday」に置き換えるだけで済みますが、「Holidays 2023」を「Holiday 2023」に置き換える必要はありません。 </p> <p>WHERE句でreplace関数やLIKEを使ってみましたが、うまくいきませんでした。バックエンドとして PHP を使用していますが、これを回避する方法がわかりません。 </p> <p>以下は私が使用する SQL です:</p><p> <code>UPDATE 経費 SET Tags = REPLACE(Tags, :original, :replace), Updated_date = :update_date WHERE Id_user = :id_user AND タグ LIKE :original_like</code></p>
P粉248602298P粉248602298484日前494

全員に返信(1)返信します

  • P粉180844619

    P粉1808446192023-08-09 16:23:28

    値の前に先頭のカンマとスペースを追加し、その後に末尾のカンマを追加して、 , Holidays, を , Holiday, に置き換えます。
    n後で結果の先頭と末尾のカンマを再度削除します

    リーリー

    特定の値の使用例 No Holidays, Holidays, Holidays 2023, Holidays, Test, Holidays 休日列から取得するのではなく、直接挿入します:

    リーリー

    結果は次のようになります:

    リーリー

    返事
    0
  • キャンセル返事