收藏
回答

云开发db.collection里where问题,如何实现sql查询语句in的条件语法?

数据表如下:

table1:openid,field1,field2....

table2:openid1,openid2

请教各伴大神,如何在云开发实现SQL查询功能,如下:

即查找某字段在某数组内的所有记录

sql语法:

select * from table1 where openid in

(select distinct openid2 from table2 where openid1='123456789456')

非常感谢

回答关注问题邀请回答
收藏

2 个回答

  • Mr.Zhao
    Mr.Zhao
    2020-02-11

    2020-02-11
    有用 1
    回复 15
    • 老温
      老温
      2020-02-11
      VM17686:1 Error: errCode: -502003 database permission denied | errMsg: Permission denied
          at new u (WAService.js:1)
          at Function.success (WAService.js:1)
          at Object.success (WAService.js:1)
          at r (WAService.js:1)
          at WAService.js:1
          at v (WAService.js:1)
          at WAService.js:1
          at t. (VM17700 asdebug.js:1)
          at WAService.js:1
          at WAService.js:1


      提示这个,是不是权限问题,但我修改了权限,还是出错!
      2020-02-11
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-02-11回复老温
      只能云函数中用
      2020-02-11
      回复
    • 老温
      老温
      2020-02-11回复Mr.Zhao
      非常感谢,继续学习
      2020-02-11
      回复
    • 老温
      老温
      2020-02-12
      师傅,好象不对。这个LOOKUP是联表查询,left outer join(左外连接)。对该阶段的每一个输入记录,lookup 会在该记录中增加一个数组字段。
      我要的是where条件,过滤table1的条件,获取符合条件的table1记录。


      即TABLE1中的OPENID存在于子查询里的意思
      2020-02-12
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-02-12回复老温
      光一个lookup是不行的,还有replaceRoot project这些操作呢
      2020-02-12
      回复
    查看更多(10)
  • 老温
    老温
    2020-02-11

    谢谢啦,我刚在看!

    2020-02-11
    有用
    回复
登录 后发表内容
问题标签