検索

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

java - mongodb框架morphia中怎么去重?

需求:对表数据进行分组后,根据某个字段去重,然后在count

命令行有 db.collection.distinct("someField")

问:用morphia应该怎么写?或者通过原生的mongodb驱动应该怎么做?

如果用聚合的话,怎么才能当查询的结果为null时统计的数量为0,比如sql中的 isNull(count(1), 0)

高洛峰高洛峰2805日前810

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

  • 阿神

    阿神2017-04-17 15:17:00

    リーリー

    これは私が実際に使用したコードです。簡単に言うと、各グループ内の特定のフィールドを重複排除する目的を達成するために group を 2 回使用しました。

    参考: http://www.cnblogs.com/lori/p/4597341.html

    返事
    0
  • ringa_lee

    ringa_lee2017-04-17 15:17:00

    質問内のコマンドライン com.mongodb.DBCollection#distinct に対応する db.collection.distinct("someField") メソッドを呼び出します。
    これによりすべてのデータが返されるため、カウントを取得したいだけの場合は、distinct を使用する必要はありません。
    集計を直接使用できます。

    リーリー

    返事
    0
  • キャンセル返事