2016-10-24 11 views
0

mongodbソートを使用しているときに1つの問題に直面しています。デフォルトでは、ソートは昇順の最初の要素と降順の最後の要素としてヌル値に対して行われます。私の要件の1つとして、並べ替え順序に関係なく、最後の場所にすべてのnull値を表示する必要があります。SpringデータMongodbがヌル値で正しくソートされない

単一の列の場合は、問題ありません。しかし、私は一度に複数のフィールドをソートする必要があります。そして、すべてのフィールドについて、最後の値としてすべてのNULL値を考慮する必要があります。

Mongodbがこれをサポートする方法はありますか?私は春のデータを使用しています。思考春の並べ替えは、パラメータとしてNull Lastの機能を提供しますが、動作しない方法もあります。

+0

を、例えばより多くの情報を提供してください。あなたはすでに試してみたコードを試してみました。また、あなたの環境に関する詳細情報を共有してください。 –

答えて

0

あなたはこの方法あなたのフィールドを並べ替えることができます。

Sort sort = new Sort(
      new Sort.Order(Sort.Direction.DESC, "firstField", Sort.NullHandling.NULLS_LAST), 
      new Sort.Order(Sort.Direction.ASC, "secondField", Sort.NullHandling.NULLS_LAST), 
      new Sort.Order(Sort.Direction.ASC, "thirdField", Sort.NullHandling.NULLS_FIRST)); 
関連する問題