検索

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

mysql が json を逆の順序で保存するのはなぜですか?それを修正する方法

これは SQL に json を挿入するコードです

リーリー

上で保存した SQL は逆の順序になっています。 !どうすれば修正できますか?

順序にこだわりたい理由は、json を配列に変換して Pop を使用できるようにしたいからです。

この問題に対して、MySQL は配列を保存して並べ替えるべきだと思います。

P粉141925181P粉141925181289日前386

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

  • P粉090087228

    P粉0900872282024-02-18 11:01:52

    https://dev.mysql.com/doc/refman /8.0/en/json.html はこう言いました:

    これは、JSON オブジェクト内のキーの特定の並べ替え順序に依存すべきではないことを意味します。 JSON 配列には順序がありますが、JSON オブジェクト キーには順序がありません。

    JSON オブジェクトのキーとそれぞれの値が同じ場合、順序に関係なく等しいです:

    リーリー

    コメントへの返信:

    上記の例の重要な点は、MySQL に必要な順序でキーを保存させることはできないということです。 MySQL の JSON 実装ではこれが行われません。 JSON オブジェクト キーを再配置して検索効率を向上させます。これに関してあなたには発言権がありません。

    JSON 配列は並べ替えることができます。したがって、順序を維持する唯一のオプションは、配列を使用することです。配列の各要素は、単一のキーを持つオブジェクトです。

    リーリー

    これがあなたが求めたことではないことは承知していますが、あなたが求めたことは MySQL では不可能です。

    返事
    0
  • キャンセル返事