sql >> データベース >  >> RDS >> Mysql

SQL関数の最初の結果のみを置き換える方法

    MySQL <8.0の場合、regexp_replace() などはサポートされていません。文字列関数を使用できます:

    update wp_comments
    set comment_content = concat(
        substr(comment_content, 1, locate('XXX', comment_content) - 1),
        'MMM',
        substr(comment_content, locate('XXX', comment_content) + 3)
    ) 
    where comment_id = 334 and locate('XXX', comment_content) > 0
    

    DBフィドルのデモ

    comment_id | comment_content                                                               
    ---------: | :-----------------------------------------------------------------------------
           334 | Hello MMM tomorrow we XXX will meeting in XXX Dubai, Do you want join us XXX ?
    


    1. 年齢[1、2、3]と1と3の間の年齢

    2. MySQLでテーブルの名前を変更します

    3. Laravelでこのデータ更新エラーを解決する方法

    4. SQLiteでデータベースをアタッチする