收藏
回答

云开发的数据库如何更新或删除数组里的某一个值

问题模块 框架类型 问题类型 终端类型 AppID 基础库版本
云开发 小程序 需求 客户端 wx8c616f8cfef2a55d 2.2.5

云开发的服务端数据库操作,如何对一条记录中的数组里的某个值进行修改或者删除。

比如一条记录:

{

"data": {

"_id": "XAo0G3ffS3SW17e1",

"users": [{

"id": "1",

"name": "xxx"

}, {

"id": "2",

"name": "xxx"

}, {

"id": "3",

"name": "xxx"

}]

}

}


我只想对users里的第二天记录修改或者删除,该怎么操作呢。

API里只提供了db.command.pop和shift的方法,但是删除尾部和头部元素意义不大啊。


最后一次编辑于  2018-12-07  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

5 个回答

  • 邓坤力
    邓坤力
    2018-12-07

    后续版本会支持该特性,请关注小程序的功能更新,谢谢!

    2018-12-07
    赞同 1
    回复
  • 琳
    09-11

    请问这个你解决了吗?我页遇到同样的问题了。

    09-11
    赞同
    回复 6
    • 瀚
      09-11
      只能拆表了,比如把我举的例子里的users建成一个表,然后data里只保存一个userid,通过id在新建的表里删除
      09-11
      回复
    • 琳
      09-11回复
      那看来官方是不支持了。我的那个数组数据量不大,所以我现在的做法是先把users查询出来,然后小程序端js处理删除掉想删的元素,然后再更新集合的users。
      09-11
      回复
    • ieloag
      ieloag
      09-19回复
      现在支持了啊
      09-19
      回复
    • 琳
      09-20回复ieloag
      我在官方文档里没找到啊,求教,那个命令?
      09-20
      回复
    • ieloag
      ieloag
      09-20回复
      删除好像没有,有修改。文档里面搜数组
      09-20
      回复
    查看更多(1)
  • stone凯
    stone凯
    01-17

    同样遇到这个问题,何解?

    01-17
    赞同
    回复 2
    • 瀚
      01-17

      把这个数组拆出来建了一张表

      01-17
      回复
    • i
      i
      02-25回复

      能指教下怎么将数组拆出来建一个表呢?又是怎么关联的

      02-25
      回复
  • i
    i
    2018-12-26

    有解决吗??怎么解决的

    2018-12-26
    赞同
    回复 1
    • 瀚
      01-17

      把这个数组拆出来建了一张表

      01-17
      回复
  • 强15851218976
    强15851218976
    2018-12-07

    建议重新设计数据库,数组型主要是用来读取的,如果会频繁的修改并且数据较大,是不是可以考虑做成表项?

    2018-12-07
    赞同
    回复 1
    • 瀚
      2018-12-07

      那只能设计成关系型数据库那种了,users一张表,做个关联和data一对多

      2018-12-07
      回复