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

mysqljsonの値で配列要素を削除します

    配列に重複がないことがわかっている場合は、JSON_SEARCHを使用できます。 削除する値へのパスを見つけて、JSON_REMOVEを使用します それを削除します。 JSON_SEARCHを確認する必要があることに注意してください 実際に値を検索します。それ以外の場合は、JSON_REMOVE フィールド全体を無効にします:

    UPDATE waitinglist 
    SET new = JSON_REMOVE(new, JSON_UNQUOTE(JSON_SEARCH(new, 'one', 'orange')))
    WHERE JSON_SEARCH(new, 'one', 'orange') IS NOT NULL
    

    dbfiddleのデモを作成しました

    JSON_UNQUOTEを使用する必要があることに注意してください JSON_SEARCHからの応答について JSON_REMOVEの有効なパスにします 。



    1. MySQLWorkbenchセッションはデータベースの更新を認識しません

    2. Oracleの簡単な変換/移行へのMSAccess

    3. INOUTパラメータを使用したOracleの例のストアドプロシージャ

    4. Javaでユーザー定義型を含むOracleストアドプロシージャを呼び出す方法は?