输入关键字或相关内容进行搜索
搜索:
发布问题
.orderBy('subtract(like_count,nolike_count) desc')
这样写貌似没有达到排序效果
没有找到相关结果
DCloud_uniCloud_WYQ
应先使用field计算,再将field内计算出来的结果排序
1***@qq.com (作者)
貌似是因为getTemp的关系
const usercomment = db.collection('usercomment').where("user_id=='" + uid + "'").getTemp() const user = db.collection('uni-id-users').field("_id,nickname,avatar_file").getTemp() db.collection('comment', usercomment, user)
使用getTemp进行联表查询的话排序就乱了
2022-02-08 19:49
回复 1***@qq.com: 没看明白你说的,跟帖子里面说的是一个问题吗?
2022-02-09 11:23
回复 DCloud_uniCloud_WYQ: 这是我希望的的排序方法
const usercomment = db.collection('usercomment').where("user_id=='" + uid + "'").getTemp() const user = db.collection('uni-id-users').field("_id,nickname,avatar_file").getTemp() db.collection('comment', usercomment, user).where("isshow==true&&deletecom==false&&" + "food_id=='" + this.foodid + "'").field("_id,like_count,subtract(like_count,nolike_count) as lastcount,food_id,content,create_date,isshow,user_id._id,user_id.nickname,user_id.avatar_file,score,food_id,showmore") .orderBy('lastcount desc').skip(pageNo).limit(pageSize).get()
先通过getTemp生成副表,再通过联表查询,field处理排序字段(lastcount),最后用lastcunt字段orderBy排序。 但结果排序是乱的。如果不通过getTemp生成副表,直接三个表连起来就可以。
2022-02-10 11:23
回复 1***@qq.com: 贴一个乱的结果出来我看下
2022-02-10 17:37
回复 DCloud_uniCloud_WYQ:
{ "_id": { "_value": "61e0ca6c5ddb6100014aeaeb", "usercomment": [] }, "like_count": 1, "lastcount": 0 }, { "_id": { "_value": "61e0cdb584e56f0001d29bc5", "usercomment": [] }, "like_count": 1, "lastcount": 1 }, { "_id": { "_value": "61e13b647bd8d20001ca20f1", "usercomment": [] }, "like_count": 0, "lastcount": -1 }
2022-02-14 23:19
该问题目前已经被锁定, 无法添加新回复
1***@qq.com (作者)
貌似是因为getTemp的关系
使用getTemp进行联表查询的话排序就乱了
2022-02-08 19:49
DCloud_uniCloud_WYQ
回复 1***@qq.com: 没看明白你说的,跟帖子里面说的是一个问题吗?
2022-02-09 11:23
1***@qq.com (作者)
回复 DCloud_uniCloud_WYQ: 这是我希望的的排序方法
先通过getTemp生成副表,再通过联表查询,field处理排序字段(lastcount),最后用lastcunt字段orderBy排序。
但结果排序是乱的。如果不通过getTemp生成副表,直接三个表连起来就可以。
2022-02-10 11:23
DCloud_uniCloud_WYQ
回复 1***@qq.com: 贴一个乱的结果出来我看下
2022-02-10 17:37
1***@qq.com (作者)
回复 DCloud_uniCloud_WYQ:
2022-02-14 23:19