diff --git a/docs/uniCloud/clientdb.md b/docs/uniCloud/clientdb.md index 1bf4f67b146344492c1e050c3647c31284d61ade..fbc51f2dc7d341b9f4c3ee966314f1601945c6b1 100644 --- a/docs/uniCloud/clientdb.md +++ b/docs/uniCloud/clientdb.md @@ -1376,10 +1376,21 @@ const res = await db.collection('score') ### 数据去重@distinct -自`HBuilderX 3.0.8`起,clientDB支持使用distinct方法对数据进行去重操作 +通过.distinct()方法,对数据查询结果中重复的记录进行去重。 + +> `HBuilderX 3.0.8`+ + +```js +const res = await db.collection('table1') +.field('field1') +.distinct() // 注意distinct方法没有参数 +.get() +``` 例:如果数据库`score`表为某次比赛统计的分数数据,每条记录为一个学生的分数 +`score`表的数据: + ```js { _id: "1", @@ -1434,7 +1445,7 @@ const res = await db.collection('score') .get() ``` -返回结果如下 +查询返回结果如下 ```js { @@ -1453,7 +1464,7 @@ const res = await db.collection('score') **注意** -- distinct必须搭配field方法使用 +- distinct指对返回结果中完全相同的记录进行去重,重复的记录只保留一条。因为`_id`字段是必然不同的,所以使用distinct时必须同时指定field,且field中不可存在`_id`字段 ### 新增数据记录add @@ -2392,4 +2403,4 @@ res = { |stdDevPop |[stdDevPop](uniCloud/cf-database.md?id=stddevpop) |stdDevPop(<表达式>) |- | |stdDevSamp |[stdDevSamp](uniCloud/cf-database.md?id=stddevsamp) |stdDevSamp(<表达式>) |- | |sum |[sum](uniCloud/cf-database.md?id=sum) |sum(<表达式>) |- | -|mergeObjects |[mergeObjects](uniCloud/cf-database.md?id=mergeobjects)|mergeObjects(<表达式1>)|在groupField内使用时仅接收一个参数 | \ No newline at end of file +|mergeObjects |[mergeObjects](uniCloud/cf-database.md?id=mergeobjects)|mergeObjects(<表达式1>)|在groupField内使用时仅接收一个参数 |